Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

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

[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
Loading
Loading
Loading
Loading
+4 −2
Original line number Diff line number Diff line
@@ -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 */