X-Git-Url: https://git.kernel.dk/?a=blobdiff_plain;f=drivers%2Fvideo%2Fsm501fb.c;h=dcd98793d5681e14e7521e1f9efcf92806fe4f8b;hb=c00b1b7d19d335f96aa03ef2e4e71b7fb4fdb056;hp=f94ae84a58cd54eabd267a9e4d33384b346755ec;hpb=fd002050becd888e4dab419aa59a6484afe1d00b;p=linux-2.6-block.git diff --git a/drivers/video/sm501fb.c b/drivers/video/sm501fb.c index f94ae84a58cd..dcd98793d568 100644 --- a/drivers/video/sm501fb.c +++ b/drivers/video/sm501fb.c @@ -159,6 +159,9 @@ static int sm501_alloc_mem(struct sm501fb_info *inf, struct sm501_mem *mem, break; case SM501_MEMF_PANEL: + if (size > inf->fbmem_len) + return -ENOMEM; + ptr = inf->fbmem_len - size; fbi = inf->fb[HEAD_CRT]; @@ -172,9 +175,6 @@ static int sm501_alloc_mem(struct sm501fb_info *inf, struct sm501_mem *mem, if (fbi && ptr < fbi->fix.smem_len) return -ENOMEM; - if (ptr < 0) - return -ENOMEM; - break; case SM501_MEMF_CRT: