diff options
author | Robert Kukla <roolku@rockbox.org> | 2007-04-01 17:28:46 +0000 |
---|---|---|
committer | Robert Kukla <roolku@rockbox.org> | 2007-04-01 17:28:46 +0000 |
commit | 6dbcceb1fef9c3c6b4ec186543ab7ce6e8647df1 (patch) | |
tree | 738670ee5f0db4d0f76806345bf369ecf0b72f01 /firmware/drivers/lcd-2bit-horz.c | |
parent | c67c892cd3351f32aabd84ad4d597ce2c971e62a (diff) | |
download | rockbox-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-2bit-horz.c')
-rw-r--r-- | firmware/drivers/lcd-2bit-horz.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/firmware/drivers/lcd-2bit-horz.c b/firmware/drivers/lcd-2bit-horz.c index 475e466c42..d3d086a9d2 100644 --- a/firmware/drivers/lcd-2bit-horz.c +++ b/firmware/drivers/lcd-2bit-horz.c | |||
@@ -889,6 +889,8 @@ void lcd_invertscroll(int x, int y) | |||
889 | 889 | ||
890 | (void)x; | 890 | (void)x; |
891 | 891 | ||
892 | if(y>=SCROLLABLE_LINES) return; | ||
893 | |||
892 | s = &scroll[y]; | 894 | s = &scroll[y]; |
893 | s->invert = !s->invert; | 895 | s->invert = !s->invert; |
894 | } | 896 | } |
@@ -939,6 +941,8 @@ void lcd_puts_scroll_style_offset(int x, int y, const unsigned char *string, | |||
939 | struct scrollinfo* s; | 941 | struct scrollinfo* s; |
940 | int w, h; | 942 | int w, h; |
941 | 943 | ||
944 | if(y>=SCROLLABLE_LINES) return; | ||
945 | |||
942 | s = &scroll[y]; | 946 | s = &scroll[y]; |
943 | 947 | ||
944 | s->start_tick = current_tick + scroll_delay; | 948 | s->start_tick = current_tick + scroll_delay; |