diff --git a/apps/gui/skin_engine/skin_parser.c b/apps/gui/skin_engine/skin_parser.c index a1cc40ff6e..4ebdcab722 100644 --- a/apps/gui/skin_engine/skin_parser.c +++ b/apps/gui/skin_engine/skin_parser.c @@ -768,7 +768,7 @@ static int parse_setting_and_lang(struct skin_element *element, #ifndef __PCTOOL__ i = lang_english_to_id(temp); if (i < 0) - return WPS_ERROR_INVALID_PARAM; + i = LANG_LAST_INDEX_IN_ARRAY; #endif } else if (element->params_count > 1) diff --git a/apps/gui/skin_engine/skin_tokens.c b/apps/gui/skin_engine/skin_tokens.c index a0de45d3e3..a4c9af7539 100644 --- a/apps/gui/skin_engine/skin_tokens.c +++ b/apps/gui/skin_engine/skin_tokens.c @@ -821,7 +821,8 @@ const char *get_token_value(struct gui_wps *gwps, return (char*)SKINOFFSETTOPTR(get_skin_buffer(data), token->value.data); case SKIN_TOKEN_TRANSLATEDSTRING: - return (char*)P2STR(ID2P(token->value.i)); + return token->value.i < LANG_LAST_INDEX_IN_ARRAY ? + (char*)P2STR(ID2P(token->value.i)) : ""; case SKIN_TOKEN_PLAYLIST_ENTRIES: numeric_ret = playlist_amount();