diff options
author | Teruaki Kawashima <teru@rockbox.org> | 2010-06-03 13:32:12 +0000 |
---|---|---|
committer | Teruaki Kawashima <teru@rockbox.org> | 2010-06-03 13:32:12 +0000 |
commit | 6e39dc9e27e852bcf88490ee0c5e267c90f0513b (patch) | |
tree | 2c6c2251391c8661d8279ad665fbdc72a7d4ec2e /apps | |
parent | d68710e9fc96ebe551009f7d9f02fe1f481847e0 (diff) | |
download | rockbox-6e39dc9e27e852bcf88490ee0c5e267c90f0513b.tar.gz rockbox-6e39dc9e27e852bcf88490ee0c5e267c90f0513b.zip |
Correct reusing buffers if the backdrop file is already loaded.
FS#11305 by myself.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26510 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps')
-rw-r--r-- | apps/gui/skin_engine/skin_backdrops.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/apps/gui/skin_engine/skin_backdrops.c b/apps/gui/skin_engine/skin_backdrops.c index 77de8bdc1a..a32bfbe589 100644 --- a/apps/gui/skin_engine/skin_backdrops.c +++ b/apps/gui/skin_engine/skin_backdrops.c | |||
@@ -31,7 +31,7 @@ | |||
31 | #if (LCD_DEPTH > 1) || (defined(HAVE_REMOTE_LCD) && (LCD_REMOTE_DEPTH > 1)) | 31 | #if (LCD_DEPTH > 1) || (defined(HAVE_REMOTE_LCD) && (LCD_REMOTE_DEPTH > 1)) |
32 | 32 | ||
33 | static struct skin_backdrop { | 33 | static struct skin_backdrop { |
34 | char name[MAX_FILENAME+1]; | 34 | char name[MAX_PATH]; |
35 | char *buffer; | 35 | char *buffer; |
36 | enum screen_type screen; | 36 | enum screen_type screen; |
37 | } backdrops[SKINNABLE_SCREENS_COUNT*NB_SCREENS]; | 37 | } backdrops[SKINNABLE_SCREENS_COUNT*NB_SCREENS]; |
@@ -88,7 +88,7 @@ char* skin_backdrop_load(char* backdrop, char *bmpdir, enum screen_type screen) | |||
88 | 88 | ||
89 | for(i=0;i<SKINNABLE_SCREENS_COUNT*NB_SCREENS;i++) | 89 | for(i=0;i<SKINNABLE_SCREENS_COUNT*NB_SCREENS;i++) |
90 | { | 90 | { |
91 | if (!strcmp(backdrops[i].name, backdrop) && backdrops[i].screen == screen) | 91 | if (!strcmp(backdrops[i].name, filename) && backdrops[i].screen == screen) |
92 | { | 92 | { |
93 | return backdrops[i].buffer; | 93 | return backdrops[i].buffer; |
94 | } | 94 | } |
@@ -105,7 +105,7 @@ char* skin_backdrop_load(char* backdrop, char *bmpdir, enum screen_type screen) | |||
105 | return NULL; | 105 | return NULL; |
106 | loaded = screens[screen].backdrop_load(filename, bdrop->buffer); | 106 | loaded = screens[screen].backdrop_load(filename, bdrop->buffer); |
107 | bdrop->screen = screen; | 107 | bdrop->screen = screen; |
108 | strlcpy(bdrop->name, backdrop, MAX_FILENAME+1); | 108 | strlcpy(bdrop->name, filename, sizeof(bdrop->name)); |
109 | 109 | ||
110 | return loaded ? bdrop->buffer : NULL; | 110 | return loaded ? bdrop->buffer : NULL; |
111 | } | 111 | } |