mirror of
https://github.com/edk2-porting/linux-next.git
synced 2024-12-29 23:53:55 +08:00
[PATCH] orinoco: Fix memory leak and unneeded unlock in orinoco_join_ap()
Signed-off-by: Pavel Roskin <proski@gnu.org> Fix memory leak and unneeded unlock in orinoco_join_ap() If orinoco_lock() fails, the code would still run orinoco_unlock(), instead of freeing the allocated memory. Found by sparse. Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
This commit is contained in:
parent
4c08202547
commit
f3cb4cc120
@ -1046,7 +1046,7 @@ static void orinoco_join_ap(struct net_device *dev)
|
||||
return;
|
||||
|
||||
if (orinoco_lock(priv, &flags) != 0)
|
||||
goto out;
|
||||
goto fail_lock;
|
||||
|
||||
/* Sanity checks in case user changed something in the meantime */
|
||||
if (! priv->bssid_fixed)
|
||||
@ -1091,8 +1091,10 @@ static void orinoco_join_ap(struct net_device *dev)
|
||||
printk(KERN_ERR "%s: Error issuing join request\n", dev->name);
|
||||
|
||||
out:
|
||||
kfree(buf);
|
||||
orinoco_unlock(priv, &flags);
|
||||
|
||||
fail_lock:
|
||||
kfree(buf);
|
||||
}
|
||||
|
||||
/* Send new BSSID to userspace */
|
||||
|
Loading…
Reference in New Issue
Block a user