From aae69dff459324496ddf6df445f0b1e5a0d5cdf3 Mon Sep 17 00:00:00 2001 From: Magnus Holmgren Date: Fri, 11 Jul 2008 07:33:56 +0000 Subject: Fix FS #9181, allowing the documented 3 progress bars per WPS. Also simplify the code a little. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18008 a1c6a512-1295-4272-9138-f99709370657 --- apps/gui/wps_parser.c | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) (limited to 'apps/gui/wps_parser.c') diff --git a/apps/gui/wps_parser.c b/apps/gui/wps_parser.c index 682ff681d0..163bf84917 100644 --- a/apps/gui/wps_parser.c +++ b/apps/gui/wps_parser.c @@ -828,7 +828,7 @@ static int parse_progressbar(const char *wps_bufptr, int line_y_pos = font_height*(wps_data->num_lines - wps_data->viewports[wps_data->num_viewports].first_line); - if (wps_data->progressbar_count +1 >= MAX_PROGRESSBARS) + if (wps_data->progressbar_count >= MAX_PROGRESSBARS) return WPS_ERROR_INVALID_PARAM; pb = &wps_data->progressbar[wps_data->progressbar_count]; @@ -841,8 +841,7 @@ static int parse_progressbar(const char *wps_bufptr, pb->height = SYSFONT_HEIGHT-2; pb->y = line_y_pos + (font_height-pb->height)/2; - wps_data->viewports[wps_data->num_viewports].pb = - &wps_data->progressbar[wps_data->progressbar_count]; + wps_data->viewports[wps_data->num_viewports].pb = pb; wps_data->progressbar_count++; return 0; } @@ -869,9 +868,7 @@ static int parse_progressbar(const char *wps_bufptr, pb->y = y; else pb->y = line_y_pos + (font_height-pb->height)/2; - wps_data->progressbar[wps_data->progressbar_count].have_bitmap_pb = false; - wps_data->viewports[wps_data->num_viewports].pb = - &wps_data->progressbar[wps_data->progressbar_count]; + wps_data->viewports[wps_data->num_viewports].pb = pb; wps_data->progressbar_count++; /* Skip the rest of the line */ return skip_end_of_line(wps_bufptr)-1; -- cgit v1.2.3