diff options
| -rw-r--r-- | core/sme/src/rrm/sme_rrm.c | 8 |
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; |
