Commit f3cb4cc1 authored by Pavel Roskin's avatar Pavel Roskin Committed by Jeff Garzik

[PATCH] orinoco: Fix memory leak and unneeded unlock in orinoco_join_ap()

Signed-off-by: default avatarPavel 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: default avatarJeff Garzik <jgarzik@pobox.com>
parent 4c082025
......@@ -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 */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment