diff options
| author | Dave Chapman <dave@dchapman.com> | 2008-03-24 14:58:30 +0000 |
|---|---|---|
| committer | Dave Chapman <dave@dchapman.com> | 2008-03-24 14:58:30 +0000 |
| commit | 2a34943d7fe818818b97d4c5c50cc9c9ae367099 (patch) | |
| tree | 15cf1f2c28ac81c548660c4f3abac132eea0d8f1 /apps/gui | |
| parent | 196899ebfd1848d2dd698b745621b1c7e199a3a2 (diff) | |
| download | rockbox-2a34943d7fe818818b97d4c5c50cc9c9ae367099.zip rockbox-2a34943d7fe818818b97d4c5c50cc9c9ae367099.tar.gz rockbox-2a34943d7fe818818b97d4c5c50cc9c9ae367099.tar.bz2 rockbox-2a34943d7fe818818b97d4c5c50cc9c9ae367099.tar.xz | |
Hopefully get the viewport position/dimensions validation correct this time.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16782 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/gui')
| -rw-r--r-- | apps/gui/wps_parser.c | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/apps/gui/wps_parser.c b/apps/gui/wps_parser.c index 940b3e4..0a06944 100644 --- a/apps/gui/wps_parser.c +++ b/apps/gui/wps_parser.c @@ -593,8 +593,10 @@ static int parse_viewport(const char *wps_bufptr, #ifdef HAVE_REMOTE_LCD if (wps_data->remote_wps) { - if (((vp->x + vp->width) >= LCD_REMOTE_WIDTH) || - ((vp->y + vp->height) >= LCD_REMOTE_HEIGHT)) + if ((vp->x >= LCD_REMOTE_WIDTH) || + ((vp->x + vp->width) > LCD_REMOTE_WIDTH) || + (vp->y >= LCD_REMOTE_HEIGHT) || + ((vp->y + vp->height) > LCD_REMOTE_HEIGHT)) { return WPS_ERROR_INVALID_PARAM; } @@ -602,8 +604,10 @@ static int parse_viewport(const char *wps_bufptr, else #else { - if (((vp->x + vp->width) >= LCD_WIDTH) || - ((vp->y + vp->height) >= LCD_HEIGHT)) + if ((vp->x >= LCD_WIDTH) || + ((vp->x + vp->width) > LCD_WIDTH) || + (vp->y >= LCD_HEIGHT) || + ((vp->y + vp->height) > LCD_HEIGHT)) { return WPS_ERROR_INVALID_PARAM; } |