USB HID: fix memory leak of usbhid_device
authorJiri Kosina <jkosina@suse.cz>
Mon, 30 Jul 2007 13:40:06 +0000 (15:40 +0200)
committerJiri Kosina <jkosina@suse.cz>
Thu, 2 Aug 2007 11:48:03 +0000 (13:48 +0200)
Add forgotten freeing of usbhid_device structure.

Signed-off-by: Jiri Kosina <jkosina@suse.cz>
drivers/hid/usbhid/hid-core.c

index 3ff74685875d374f974f3d1a6f81ad718c767db9..6e7393460ead1fb75abece8b0160d9e084183953 100644 (file)
@@ -877,6 +877,7 @@ fail:
        usb_free_urb(usbhid->urbin);
        usb_free_urb(usbhid->urbout);
        usb_free_urb(usbhid->urbctrl);
+       kfree(usbhid);
 fail_no_usbhid:
        hid_free_buffers(dev, hid);
        hid_free_device(hid);
@@ -912,6 +913,7 @@ static void hid_disconnect(struct usb_interface *intf)
        usb_free_urb(usbhid->urbin);
        usb_free_urb(usbhid->urbctrl);
        usb_free_urb(usbhid->urbout);
+       kfree(usbhid);
 
        hid_free_buffers(hid_to_usb_dev(hid), hid);
        hid_free_device(hid);