Unverified Commit 55bdd9ab authored by openeuler-ci-bot's avatar openeuler-ci-bot Committed by Gitee
Browse files

!9020 wifi: libertas: fix some memleaks in lbs_allocate_cmd_buffer()

parents 9fac591d a10fc629
Loading
Loading
Loading
Loading
+11 −2
Original line number Diff line number Diff line
@@ -1133,7 +1133,7 @@ int lbs_allocate_cmd_buffer(struct lbs_private *priv)
		if (!cmdarray[i].cmdbuf) {
			lbs_deb_host("ALLOC_CMD_BUF: ptempvirtualaddr is NULL\n");
			ret = -1;
			goto done;
			goto free_cmd_array;
		}
	}

@@ -1141,8 +1141,17 @@ int lbs_allocate_cmd_buffer(struct lbs_private *priv)
		init_waitqueue_head(&cmdarray[i].cmdwait_q);
		lbs_cleanup_and_insert_cmd(priv, &cmdarray[i]);
	}
	ret = 0;
	return 0;

free_cmd_array:
	for (i = 0; i < LBS_NUM_CMD_BUFFERS; i++) {
		if (cmdarray[i].cmdbuf) {
			kfree(cmdarray[i].cmdbuf);
			cmdarray[i].cmdbuf = NULL;
		}
	}
	kfree(priv->cmd_array);
	priv->cmd_array = NULL;
done:
	return ret;
}