diff --git a/apps/gui/skin_engine/skin_display.c b/apps/gui/skin_engine/skin_display.c index e991ba9aa0..5aa4d78cad 100644 --- a/apps/gui/skin_engine/skin_display.c +++ b/apps/gui/skin_engine/skin_display.c @@ -196,10 +196,9 @@ static void draw_playlist_viewer_list(struct gui_wps *gwps, struct mp3entry id3; #endif char buf[MAX_PATH*2], tempbuf[MAX_PATH]; - unsigned int buf_used = 0; gwps->display->set_viewport(viewer->vp); - for(i=start_item; (i-start_item)lines[line].count && (buf_usedlines[line].count && line_len < sizeof(buf)) { const char *out = NULL; token.type = viewer->lines[line].tokens[j]; @@ -234,8 +233,7 @@ static void draw_playlist_viewer_list(struct gui_wps *gwps, out = get_id3_token(&token, pid3, tempbuf, sizeof(tempbuf), -1, NULL); if (out) { - snprintf(&buf[buf_used], sizeof(buf)-buf_used, "%s", out); - buf_used += strlen(out); + line_len = strlcat(buf, out, sizeof(buf)); j++; continue; } @@ -270,8 +268,7 @@ static void draw_playlist_viewer_list(struct gui_wps *gwps, } if (tempbuf[0]) { - snprintf(&buf[buf_used], sizeof(buf)-buf_used, "%s", tempbuf); - buf_used += strlen(tempbuf); + line_len = strlcat(buf, tempbuf, sizeof(buf)); } j++; }