summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMagnus Holmgren <magnushol@gmail.com>2008-07-11 07:33:56 +0000
committerMagnus Holmgren <magnushol@gmail.com>2008-07-11 07:33:56 +0000
commitaae69dff459324496ddf6df445f0b1e5a0d5cdf3 (patch)
treef2e561b88c3f93be752d3ac7b514bbc9656df7d4
parent349ee09216d6c47b95f5667d75e84d3b68e058b0 (diff)
downloadrockbox-aae69dff459324496ddf6df445f0b1e5a0d5cdf3.tar.gz
rockbox-aae69dff459324496ddf6df445f0b1e5a0d5cdf3.zip
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
-rw-r--r--apps/gui/wps_parser.c9
1 files changed, 3 insertions, 6 deletions
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,
828 int line_y_pos = font_height*(wps_data->num_lines - 828 int line_y_pos = font_height*(wps_data->num_lines -
829 wps_data->viewports[wps_data->num_viewports].first_line); 829 wps_data->viewports[wps_data->num_viewports].first_line);
830 830
831 if (wps_data->progressbar_count +1 >= MAX_PROGRESSBARS) 831 if (wps_data->progressbar_count >= MAX_PROGRESSBARS)
832 return WPS_ERROR_INVALID_PARAM; 832 return WPS_ERROR_INVALID_PARAM;
833 833
834 pb = &wps_data->progressbar[wps_data->progressbar_count]; 834 pb = &wps_data->progressbar[wps_data->progressbar_count];
@@ -841,8 +841,7 @@ static int parse_progressbar(const char *wps_bufptr,
841 pb->height = SYSFONT_HEIGHT-2; 841 pb->height = SYSFONT_HEIGHT-2;
842 pb->y = line_y_pos + (font_height-pb->height)/2; 842 pb->y = line_y_pos + (font_height-pb->height)/2;
843 843
844 wps_data->viewports[wps_data->num_viewports].pb = 844 wps_data->viewports[wps_data->num_viewports].pb = pb;
845 &wps_data->progressbar[wps_data->progressbar_count];
846 wps_data->progressbar_count++; 845 wps_data->progressbar_count++;
847 return 0; 846 return 0;
848 } 847 }
@@ -869,9 +868,7 @@ static int parse_progressbar(const char *wps_bufptr,
869 pb->y = y; 868 pb->y = y;
870 else 869 else
871 pb->y = line_y_pos + (font_height-pb->height)/2; 870 pb->y = line_y_pos + (font_height-pb->height)/2;
872 wps_data->progressbar[wps_data->progressbar_count].have_bitmap_pb = false; 871 wps_data->viewports[wps_data->num_viewports].pb = pb;
873 wps_data->viewports[wps_data->num_viewports].pb =
874 &wps_data->progressbar[wps_data->progressbar_count];
875 wps_data->progressbar_count++; 872 wps_data->progressbar_count++;
876 /* Skip the rest of the line */ 873 /* Skip the rest of the line */
877 return skip_end_of_line(wps_bufptr)-1; 874 return skip_end_of_line(wps_bufptr)-1;