diff options
author | Oliver Neukum <oliver@neukum.org> | 2007-03-26 18:12:44 +0200 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2007-04-27 13:28:38 -0700 |
commit | 4edf2c83637b9e9db771cc5629de036fe4488564 (patch) | |
tree | db29cd92d40a29c86d69881416d3f33eea498ab4 /drivers/usb | |
parent | 868e440d2f2b55f790d106100a46034b6aa12577 (diff) | |
download | linux-3.10-4edf2c83637b9e9db771cc5629de036fe4488564.tar.gz linux-3.10-4edf2c83637b9e9db771cc5629de036fe4488564.tar.bz2 linux-3.10-4edf2c83637b9e9db771cc5629de036fe4488564.zip |
USB: fix ark3116 memory leak
this driver has a memory leak in an error case.
Signed-off-by: Oliver Neukum <oneukum@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/usb')
-rw-r--r-- | drivers/usb/serial/ark3116.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/usb/serial/ark3116.c b/drivers/usb/serial/ark3116.c index edd685791a6..ea2175bb227 100644 --- a/drivers/usb/serial/ark3116.c +++ b/drivers/usb/serial/ark3116.c @@ -341,7 +341,7 @@ static int ark3116_open(struct usb_serial_port *port, struct file *filp) result = usb_serial_generic_open(port, filp); if (result) - return result; + goto err_out; /* open */ ARK3116_RCV(serial, 111, 0xFE, 0xC0, 0x0000, 0x0003, 0x02, buf); @@ -372,6 +372,7 @@ static int ark3116_open(struct usb_serial_port *port, struct file *filp) if (port->tty) ark3116_set_termios(port, &tmp_termios); +err_out: kfree(buf); return result; |