summaryrefslogtreecommitdiff
path: root/firmware/drivers/lcd-16bit.c
diff options
context:
space:
mode:
authorRobert Kukla <roolku@rockbox.org>2007-04-01 17:28:46 +0000
committerRobert Kukla <roolku@rockbox.org>2007-04-01 17:28:46 +0000
commit6dbcceb1fef9c3c6b4ec186543ab7ce6e8647df1 (patch)
tree738670ee5f0db4d0f76806345bf369ecf0b72f01 /firmware/drivers/lcd-16bit.c
parentc67c892cd3351f32aabd84ad4d597ce2c971e62a (diff)
downloadrockbox-6dbcceb1fef9c3c6b4ec186543ab7ce6e8647df1.tar.gz
rockbox-6dbcceb1fef9c3c6b4ec186543ab7ce6e8647df1.zip
for WPS files with many lines the current wps code will call puts_scroll with y-values greater than the size of the scroll[] array (e.g. gwps-common.c:2063). This is a temporary security measure until viewports and/or wps tokenizer are available...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12992 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/drivers/lcd-16bit.c')
-rw-r--r--firmware/drivers/lcd-16bit.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/firmware/drivers/lcd-16bit.c b/firmware/drivers/lcd-16bit.c
index 7269e54dcd..67736ddf85 100644
--- a/firmware/drivers/lcd-16bit.c
+++ b/firmware/drivers/lcd-16bit.c
@@ -848,6 +848,8 @@ void lcd_invertscroll(int x, int y)
848 848
849 (void)x; 849 (void)x;
850 850
851 if(y>=SCROLLABLE_LINES) return;
852
851 s = &scroll[y]; 853 s = &scroll[y];
852 s->invert = !s->invert; 854 s->invert = !s->invert;
853} 855}
@@ -898,6 +900,8 @@ void lcd_puts_scroll_style_offset(int x, int y, const unsigned char *string,
898 struct scrollinfo* s; 900 struct scrollinfo* s;
899 int w, h; 901 int w, h;
900 902
903 if(y>=SCROLLABLE_LINES) return;
904
901 s = &scroll[y]; 905 s = &scroll[y];
902 906
903 s->start_tick = current_tick + scroll_delay; 907 s->start_tick = current_tick + scroll_delay;