Skip to content

Commit

Permalink
skeletonfb: check fb_alloc_cmap return value and handle failure properly
Browse files Browse the repository at this point in the history
Bad example code, no cookie!

Signed-off-by: Andres Salomon <dilinger@debian.org>
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>
  • Loading branch information
Andres Salomon authored and Linus Torvalds committed Apr 1, 2009
1 parent 5e266e2 commit 0fd8531
Showing 1 changed file with 6 additions and 3 deletions.
9 changes: 6 additions & 3 deletions drivers/video/skeletonfb.c
Original file line number Diff line number Diff line change
Expand Up @@ -795,8 +795,9 @@ static int __devinit xxxfb_probe(struct pci_dev *dev,
if (!retval || retval == 4)
return -EINVAL;

/* This has to been done !!! */
fb_alloc_cmap(&info->cmap, cmap_len, 0);
/* This has to be done! */
if (fb_alloc_cmap(&info->cmap, cmap_len, 0))
return -ENOMEM;

/*
* The following is done in the case of having hardware with a static
Expand All @@ -820,8 +821,10 @@ static int __devinit xxxfb_probe(struct pci_dev *dev,
*/
/* xxxfb_set_par(info); */

if (register_framebuffer(info) < 0)
if (register_framebuffer(info) < 0) {
fb_dealloc_cmap(&info->cmap);
return -EINVAL;
}
printk(KERN_INFO "fb%d: %s frame buffer device\n", info->node,
info->fix.id);
pci_set_drvdata(dev, info); /* or platform_set_drvdata(pdev, info) */
Expand Down

0 comments on commit 0fd8531

Please sign in to comment.