summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--core/sme/src/rrm/sme_rrm.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/core/sme/src/rrm/sme_rrm.c b/core/sme/src/rrm/sme_rrm.c
index 34b672f080a5..c36335471447 100644
--- a/core/sme/src/rrm/sme_rrm.c
+++ b/core/sme/src/rrm/sme_rrm.c
@@ -296,9 +296,11 @@ static QDF_STATUS sme_ese_send_beacon_req_scan_results(
if (result_arr)
cur_result = result_arr[bss_counter];
- qdf_mem_zero(&bcn_rpt_rsp, sizeof(tSirEseBcnReportRsp));
do {
cur_meas_req = NULL;
+ /* memset bcn_rpt_rsp for each iteration */
+ qdf_mem_zero(&bcn_rpt_rsp, sizeof(bcn_rpt_rsp));
+
for (i = 0; i < rrm_ctx->eseBcnReqInfo.numBcnReqIe; i++) {
if (rrm_ctx->eseBcnReqInfo.bcnReq[i].channel ==
channel) {
@@ -357,9 +359,9 @@ static QDF_STATUS sme_ese_send_beacon_req_scan_results(
bcn_report->numBss++;
if (++j >= SIR_BCN_REPORT_MAX_BSS_DESC)
break;
- if (j >= bss_count)
+ if ((bss_counter + j) >= bss_count)
break;
- cur_result = result_arr[j];
+ cur_result = result_arr[bss_counter + j];
}
bss_counter += j;