On Wed, 6 Aug 2008 14:21:08 -0700
"Justin Mattock" <justinmattock@gmail.com> wrote:
hrmpf. Rafael went and assigned this to me.
But fortunately Parag already fixed it, so I'll merge his fix in my
next batch to Linus.
From: "Parag Warudkar" <parag.warudkar@gmail.com>
Signed-off-by: Parag Warudkar <parag.warudkar@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
---
drivers/usb/misc/isight_firmware.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff -puN drivers/usb/misc/isight_firmware.c~isight_firmware-fix-a-leak-and-double-kfree drivers/usb/misc/isight_firmware.c
--- a/drivers/usb/misc/isight_firmware.c~isight_firmware-fix-a-leak-and-double-kfree
+++ a/drivers/usb/misc/isight_firmware.c
@@ -48,7 +48,8 @@ static int isight_firmware_load(struct u
if (request_firmware(&firmware, "isight.fw", &dev->dev) != 0) {
printk(KERN_ERR "Unable to load isight firmware\n");
- return -ENODEV;
+ ret = -ENODEV;
+ goto out;
}
ptr = firmware->data;
@@ -91,7 +92,6 @@ static int isight_firmware_load(struct u
buf, llen, 300) != llen) {
printk(KERN_ERR
"Failed to load isight firmware\n");
- kfree(buf);
ret = -ENODEV;
goto out;
}
_
--