diff options
Diffstat (limited to 'apps/gui/skin_engine/skin_parser.c')
-rw-r--r-- | apps/gui/skin_engine/skin_parser.c | 43 |
1 files changed, 3 insertions, 40 deletions
diff --git a/apps/gui/skin_engine/skin_parser.c b/apps/gui/skin_engine/skin_parser.c index 034ff532f0..fe68c7c57e 100644 --- a/apps/gui/skin_engine/skin_parser.c +++ b/apps/gui/skin_engine/skin_parser.c | |||
@@ -567,7 +567,7 @@ static int get_image_id(int c) | |||
567 | return -1; | 567 | return -1; |
568 | } | 568 | } |
569 | 569 | ||
570 | static char *get_image_filename(const char *start, const char* bmpdir, | 570 | char *get_image_filename(const char *start, const char* bmpdir, |
571 | char *buf, int buf_size) | 571 | char *buf, int buf_size) |
572 | { | 572 | { |
573 | const char *end = strchr(start, '|'); | 573 | const char *end = strchr(start, '|'); |
@@ -2045,45 +2045,8 @@ static bool load_skin_bitmaps(struct wps_data *wps_data, char *bmpdir) | |||
2045 | */ | 2045 | */ |
2046 | if (wps_data->backdrop) | 2046 | if (wps_data->backdrop) |
2047 | { | 2047 | { |
2048 | char img_path[MAX_PATH]; | 2048 | wps_data->backdrop = skin_backdrop_load(wps_data->backdrop, |
2049 | bool loaded = false; | 2049 | bmpdir, curr_screen); |
2050 | size_t buf_size; | ||
2051 | #if defined(HAVE_REMOTE_LCD) && (LCD_REMOTE_DEPTH > 1) | ||
2052 | if (curr_screen == SCREEN_REMOTE) | ||
2053 | buf_size = REMOTE_LCD_BACKDROP_BYTES; | ||
2054 | else | ||
2055 | #endif | ||
2056 | buf_size = LCD_BACKDROP_BYTES; | ||
2057 | if (wps_data->backdrop[0] == '-') | ||
2058 | { | ||
2059 | #if NB_SCREENS > 1 | ||
2060 | if (curr_screen == SCREEN_REMOTE) | ||
2061 | { | ||
2062 | wps_data->backdrop = NULL; | ||
2063 | return true; | ||
2064 | } | ||
2065 | else | ||
2066 | #endif | ||
2067 | { | ||
2068 | if (!global_settings.backdrop_file[0]) | ||
2069 | { | ||
2070 | wps_data->backdrop = NULL; | ||
2071 | return true; | ||
2072 | } | ||
2073 | snprintf(img_path, sizeof(img_path), "%s/%s.bmp", | ||
2074 | BACKDROP_DIR, global_settings.backdrop_file); | ||
2075 | } | ||
2076 | } | ||
2077 | else | ||
2078 | { | ||
2079 | get_image_filename(wps_data->backdrop, bmpdir, | ||
2080 | img_path, sizeof(img_path)); | ||
2081 | } | ||
2082 | char *buffer = skin_buffer_alloc(buf_size); | ||
2083 | if (!buffer) | ||
2084 | return false; | ||
2085 | loaded = screens[curr_screen].backdrop_load(img_path, buffer); | ||
2086 | wps_data->backdrop = loaded ? buffer : NULL; | ||
2087 | } | 2050 | } |
2088 | #endif /* has backdrop support */ | 2051 | #endif /* has backdrop support */ |
2089 | 2052 | ||