Skip to content

Commit

Permalink
drivers/video/backlight/ltv350qv.c: fix a memory leak
Browse files Browse the repository at this point in the history
Signed-off-by: Axel Lin <axel.lin@gmail.com>
Cc: Haavard Skinnemoen <hskinnemoen@atmel.com>
Cc: Richard Purdie <rpurdie@rpsys.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  • Loading branch information
AxelLin authored and torvalds committed Mar 5, 2011
1 parent 10ffa96 commit 9dab51d
Showing 1 changed file with 8 additions and 1 deletion.
9 changes: 8 additions & 1 deletion drivers/video/backlight/ltv350qv.c
Expand Up @@ -239,11 +239,15 @@ static int __devinit ltv350qv_probe(struct spi_device *spi)
lcd->spi = spi;
lcd->power = FB_BLANK_POWERDOWN;
lcd->buffer = kzalloc(8, GFP_KERNEL);
if (!lcd->buffer) {
ret = -ENOMEM;
goto out_free_lcd;
}

ld = lcd_device_register("ltv350qv", &spi->dev, lcd, &ltv_ops);
if (IS_ERR(ld)) {
ret = PTR_ERR(ld);
goto out_free_lcd;
goto out_free_buffer;
}
lcd->ld = ld;

Expand All @@ -257,6 +261,8 @@ static int __devinit ltv350qv_probe(struct spi_device *spi)

out_unregister:
lcd_device_unregister(ld);
out_free_buffer:
kfree(lcd->buffer);
out_free_lcd:
kfree(lcd);
return ret;
Expand All @@ -268,6 +274,7 @@ static int __devexit ltv350qv_remove(struct spi_device *spi)

ltv350qv_power(lcd, FB_BLANK_POWERDOWN);
lcd_device_unregister(lcd->ld);
kfree(lcd->buffer);
kfree(lcd);

return 0;
Expand Down

0 comments on commit 9dab51d

Please sign in to comment.