fbdev: xoffset, yoffset and yres are unsigned
authorVille Syrjala <syrjala@sci.fi>
Thu, 24 Jul 2008 04:31:28 +0000 (21:31 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Thu, 24 Jul 2008 17:47:39 +0000 (10:47 -0700)
The xoffset, yoffset and yres members of fb_var_screeninfo are __u32.
Make them unsigned in the code as well.

Signed-off-by: Ville Syrjala <syrjala@sci.fi>
Cc: "Antonino A. Daplas" <adaplas@pol.net>
Cc: Krzysztof Helt <krzysztof.h1@poczta.fm>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
drivers/video/fbmem.c

index 1cd5071..6b48780 100644 (file)
@@ -848,9 +848,8 @@ int
 fb_pan_display(struct fb_info *info, struct fb_var_screeninfo *var)
 {
        struct fb_fix_screeninfo *fix = &info->fix;
-        int xoffset = var->xoffset;
-        int yoffset = var->yoffset;
-        int err = 0, yres = info->var.yres;
+       unsigned int yres = info->var.yres;
+       int err = 0;
 
        if (var->yoffset > 0) {
                if (var->vmode & FB_VMODE_YWRAP) {
@@ -866,8 +865,8 @@ fb_pan_display(struct fb_info *info, struct fb_var_screeninfo *var)
                                 (var->xoffset % fix->xpanstep)))
                err = -EINVAL;
 
-        if (err || !info->fbops->fb_pan_display || xoffset < 0 ||
-           yoffset < 0 || var->yoffset + yres > info->var.yres_virtual ||
+       if (err || !info->fbops->fb_pan_display ||
+           var->yoffset + yres > info->var.yres_virtual ||
            var->xoffset + info->var.xres > info->var.xres_virtual)
                return -EINVAL;