diff options
| author | Leela Venkata Kiran Kumar Reddy Chirala <kchirala@qca.qualcomm.com> | 2014-03-26 23:44:13 -0700 |
|---|---|---|
| committer | Pitani Venkata Rajesh Kumar <c_vpitan@qti.qualcomm.com> | 2014-04-15 02:06:26 +0530 |
| commit | a5782a14ec6f2fa17eba3a360a89963fa8739619 (patch) | |
| tree | 73e994c7a37a7f5a776dd6c390a7a2c8a96b1adc | |
| parent | 137654f2c9f98dd631164a601e42eb920571f85b (diff) | |
Reset client pointer to NULL after returning from vos_mem_free()
In the PE Module resetting the pointer to NULL is done by this
commit.
Change-Id: Ia1e8c1d08937c2e0034f58c08ae63ce84d06de21
CRs-fixed: 586361
| -rw-r--r-- | CORE/MAC/src/pe/lim/limProcessMessageQueue.c | 10 | ||||
| -rw-r--r-- | CORE/MAC/src/pe/lim/limProcessMlmRspMessages.c | 60 | ||||
| -rw-r--r-- | CORE/MAC/src/pe/lim/limProcessSmeReqMessages.c | 6 | ||||
| -rw-r--r-- | CORE/MAC/src/pe/lim/limSendManagementFrames.c | 1 | ||||
| -rw-r--r-- | CORE/MAC/src/pe/lim/limTimerUtils.c | 3 | ||||
| -rw-r--r-- | CORE/MAC/src/pe/lim/limUtils.c | 12 |
6 files changed, 90 insertions, 2 deletions
diff --git a/CORE/MAC/src/pe/lim/limProcessMessageQueue.c b/CORE/MAC/src/pe/lim/limProcessMessageQueue.c index ef2345d82019..db70e60586c9 100644 --- a/CORE/MAC/src/pe/lim/limProcessMessageQueue.c +++ b/CORE/MAC/src/pe/lim/limProcessMessageQueue.c @@ -1184,27 +1184,33 @@ limProcessMessages(tpAniSirGlobal pMac, tpSirMsgQ limMsg) case WDA_INIT_SCAN_RSP: limProcessInitScanRsp(pMac, limMsg->bodyptr); + limMsg->bodyptr = NULL; break; case WDA_START_SCAN_RSP: limProcessStartScanRsp(pMac, limMsg->bodyptr); + limMsg->bodyptr = NULL; break; case WDA_END_SCAN_RSP: limProcessEndScanRsp(pMac, limMsg->bodyptr); + limMsg->bodyptr = NULL; break; case WDA_FINISH_SCAN_RSP: limProcessFinishScanRsp(pMac, limMsg->bodyptr); + limMsg->bodyptr = NULL; break; #ifdef FEATURE_OEM_DATA_SUPPORT case WDA_START_OEM_DATA_RSP: limProcessOemDataRsp(pMac, limMsg->bodyptr); + limMsg->bodyptr = NULL; break; #endif case WDA_SWITCH_CHANNEL_RSP: limProcessSwitchChannelRsp(pMac, limMsg->bodyptr); + limMsg->bodyptr = NULL; break; #ifdef ANI_SIR_IBSS_PEER_CACHING @@ -2019,6 +2025,7 @@ limProcessMessages(tpAniSirGlobal pMac, tpSirMsgQ limMsg) /*Free message body pointer*/ vos_mem_free((v_VOID_t *)(limMsg->bodyptr)); + limMsg->bodyptr = NULL; break; } @@ -2044,6 +2051,7 @@ limProcessMessages(tpAniSirGlobal pMac, tpSirMsgQ limMsg) linkStateParams->callback( pMac, linkStateParams->callbackArg ); } vos_mem_free((v_VOID_t *)(limMsg->bodyptr)); + limMsg->bodyptr = NULL; break; #ifdef WLAN_FEATURE_PACKET_FILTERING @@ -2290,6 +2298,7 @@ void limProcessNormalHddMsg(tpAniSirGlobal pMac, tSirMsgQ *pLimMsg, tANI_U8 fRsp limPrintMsgName(pMac, LOGE, pLimMsg->type); // Release body vos_mem_free(pLimMsg->bodyptr); + pLimMsg->bodyptr = NULL; } } else @@ -2310,6 +2319,7 @@ void limProcessNormalHddMsg(tpAniSirGlobal pMac, tSirMsgQ *pLimMsg, tANI_U8 fRsp // Release body // limProcessSmeReqMessage consumed the buffer. We can free it. vos_mem_free(pLimMsg->bodyptr); + pLimMsg->bodyptr = NULL; } } } diff --git a/CORE/MAC/src/pe/lim/limProcessMlmRspMessages.c b/CORE/MAC/src/pe/lim/limProcessMlmRspMessages.c index 2a5b1202c3ae..5c005a166662 100644 --- a/CORE/MAC/src/pe/lim/limProcessMlmRspMessages.c +++ b/CORE/MAC/src/pe/lim/limProcessMlmRspMessages.c @@ -129,6 +129,7 @@ limProcessMlmRspMessages(tpAniSirGlobal pMac, tANI_U32 msgType, tANI_U32 *pMsgBu #ifdef FEATURE_OEM_DATA_SUPPORT case LIM_MLM_OEM_DATA_CNF: limProcessMlmOemDataReqCnf(pMac, pMsgBuf); + pMsgBuf = NULL; break; #endif @@ -181,9 +182,11 @@ limProcessMlmRspMessages(tpAniSirGlobal pMac, tANI_U32 msgType, tANI_U32 *pMsgBu break; case LIM_MLM_ADDBA_CNF: limProcessMlmAddBACnf( pMac, pMsgBuf ); + pMsgBuf = NULL; break; case LIM_MLM_DELBA_CNF: limProcessMlmDelBACnf( pMac, pMsgBuf ); + pMsgBuf = NULL; break; default: break; @@ -1953,6 +1956,7 @@ end: if( 0 != limMsgQ->bodyptr ) { vos_mem_free(pAddStaParams); + limMsgQ->bodyptr = NULL; } /* Updating PE session Id*/ mlmAssocCnf.sessionId = psessionEntry->peSessionId; @@ -2053,6 +2057,7 @@ void limProcessStaMlmDelBssRsp( tpAniSirGlobal pMac, tpSirMsgQ limMsgQ,tpPESessi if( 0 != limMsgQ->bodyptr ) { vos_mem_free(pDelBssParams); + limMsgQ->bodyptr = NULL; } if(pStaDs == NULL) return; @@ -2083,7 +2088,10 @@ void limProcessBtAmpApMlmDelBssRsp( tpAniSirGlobal pMac, tpSirMsgQ limMsgQ,tpPES { limLog(pMac, LOGE,FL("Session entry passed is NULL")); if(pDelBss != NULL) + { vos_mem_free(pDelBss); + limMsgQ->bodyptr = NULL; + } return; } @@ -2138,7 +2146,10 @@ void limProcessBtAmpApMlmDelBssRsp( tpAniSirGlobal pMac, tpSirMsgQ limMsgQ,tpPES peDeleteSession(pMac, psessionEntry); if(pDelBss != NULL) + { vos_mem_free(pDelBss); + limMsgQ->bodyptr = NULL; + } } void limProcessMlmDelStaRsp( tpAniSirGlobal pMac, tpSirMsgQ limMsgQ ) @@ -2157,7 +2168,10 @@ void limProcessMlmDelStaRsp( tpAniSirGlobal pMac, tpSirMsgQ limMsgQ ) { limLog(pMac, LOGP,FL("Session Does not exist or invalid body pointer in message")); if(pDeleteStaParams != NULL) + { vos_mem_free(pDeleteStaParams); + limMsgQ->bodyptr = NULL; + } return; } @@ -2188,6 +2202,7 @@ void limProcessBtAmpApMlmDelStaRsp( tpAniSirGlobal pMac, tpSirMsgQ limMsgQ,tpPES FL( "DPH Entry for STA %X missing."), pDelStaParams->assocId); statusCode = eSIR_SME_REFUSED; vos_mem_free(pDelStaParams); + limMsgQ->bodyptr = NULL; return; } @@ -2213,6 +2228,7 @@ void limProcessBtAmpApMlmDelStaRsp( tpAniSirGlobal pMac, tpSirMsgQ limMsgQ,tpPES if(eLIM_MLM_WT_ASSOC_DEL_STA_RSP_STATE == pStaDs->mlmStaContext.mlmState) { vos_mem_free(pDelStaParams); + limMsgQ->bodyptr = NULL; if (limAddSta(pMac, pStaDs, false, psessionEntry) != eSIR_SUCCESS) { PELOGE(limLog(pMac, LOGE, @@ -2249,6 +2265,7 @@ void limProcessBtAmpApMlmDelStaRsp( tpAniSirGlobal pMac, tpSirMsgQ limMsgQ,tpPES } end: vos_mem_free(pDelStaParams); + limMsgQ->bodyptr = NULL; if(eLIM_MLM_WT_ASSOC_DEL_STA_RSP_STATE != pStaDs->mlmStaContext.mlmState) { limPrepareAndSendDelStaCnf(pMac, pStaDs, statusCode,psessionEntry); @@ -2292,6 +2309,7 @@ void limProcessStaMlmDelStaRsp( tpAniSirGlobal pMac, tpSirMsgQ limMsgQ,tpPESessi if( 0 != limMsgQ->bodyptr ) { vos_mem_free(pDelStaParams); + limMsgQ->bodyptr = NULL; } statusCode = (tSirResultCodes) limDelBss(pMac, pStaDs, 0,psessionEntry); return; @@ -2305,6 +2323,7 @@ end: if( 0 != limMsgQ->bodyptr ) { vos_mem_free(pDelStaParams); + limMsgQ->bodyptr = NULL; } return; } @@ -2373,6 +2392,7 @@ end: if( 0 != limMsgQ->bodyptr ) { vos_mem_free(pAddStaParams); + limMsgQ->bodyptr = NULL; } return; } @@ -2431,7 +2451,10 @@ limProcessApMlmAddBssRsp( tpAniSirGlobal pMac, tpSirMsgQ limMsgQ) { PELOGE(limLog(pMac, LOGE,FL("session does not exist for given sessionId"));) if( NULL != pAddBssParams ) + { vos_mem_free(pAddBssParams); + limMsgQ->bodyptr = NULL; + } return; } /* Update PE session Id*/ @@ -2526,7 +2549,10 @@ limProcessApMlmAddBssRsp( tpAniSirGlobal pMac, tpSirMsgQ limMsgQ) limPostSmeMessage( pMac, LIM_MLM_START_CNF, (tANI_U32 *) &mlmStartCnf ); end: if( 0 != limMsgQ->bodyptr ) + { vos_mem_free(pAddBssParams); + limMsgQ->bodyptr = NULL; + } } @@ -2636,7 +2662,10 @@ limProcessIbssMlmAddBssRsp( tpAniSirGlobal pMac, tpSirMsgQ limMsgQ ,tpPESession limPostSmeMessage( pMac, LIM_MLM_START_CNF, (tANI_U32 *) &mlmStartCnf ); end: if( 0 != limMsgQ->bodyptr ) + { vos_mem_free(pAddBssParams); + limMsgQ->bodyptr = NULL; + } } static void @@ -3106,7 +3135,10 @@ limProcessStaMlmAddBssRsp( tpAniSirGlobal pMac, tpSirMsgQ limMsgQ,tpPESession ps } end: if( 0 != limMsgQ->bodyptr ) + { vos_mem_free(pAddBssParams); + limMsgQ->bodyptr = NULL; + } } @@ -3162,8 +3194,11 @@ void limProcessMlmAddBssRsp( tpAniSirGlobal pMac, tpSirMsgQ limMsgQ ) if((psessionEntry = peFindSessionBySessionId(pMac,pAddBssParams->sessionId))== NULL) { limLog( pMac, LOGE, FL( "Session Does not exist for given sessionId" )); - if( NULL != pAddBssParams ) - vos_mem_free(pAddBssParams); + if( NULL != pAddBssParams ) + { + vos_mem_free(pAddBssParams); + limMsgQ->bodyptr = NULL; + } return; } /* update PE session Id*/ @@ -3182,7 +3217,10 @@ void limProcessMlmAddBssRsp( tpAniSirGlobal pMac, tpSirMsgQ limMsgQ ) psessionEntry->limMlmState ); mlmStartCnf.resultCode = eSIR_SME_BSS_ALREADY_STARTED_OR_JOINED; if( 0 != limMsgQ->bodyptr ) + { vos_mem_free(pAddBssParams); + limMsgQ->bodyptr = NULL; + } limPostSmeMessage( pMac, LIM_MLM_START_CNF, (tANI_U32 *) &mlmStartCnf ); } else if ((psessionEntry->bssType == eSIR_BTAMP_AP_MODE)||(psessionEntry->bssType == eSIR_BTAMP_STA_MODE)) @@ -3267,6 +3305,7 @@ void limProcessMlmSetStaKeyRsp( tpAniSirGlobal pMac, tpSirMsgQ limMsgQ ) { PELOGE(limLog(pMac, LOGE,FL("session does not exist for given sessionId"));) vos_mem_free(limMsgQ->bodyptr); + limMsgQ->bodyptr = NULL; return; } if( eLIM_MLM_WT_SET_STA_KEY_STATE != psessionEntry->limMlmState ) @@ -3280,6 +3319,7 @@ void limProcessMlmSetStaKeyRsp( tpAniSirGlobal pMac, tpSirMsgQ limMsgQ ) mlmSetKeysCnf.resultCode = (tANI_U16) (((tpSetStaKeyParams) limMsgQ->bodyptr)->status); vos_mem_free(limMsgQ->bodyptr); + limMsgQ->bodyptr = NULL; // Restore MLME state psessionEntry->limMlmState = psessionEntry->limPrevMlmState; MTRACE(macTrace(pMac, TRACE_CODE_MLM_STATE, psessionEntry->peSessionId, psessionEntry->limMlmState)); @@ -3320,6 +3360,7 @@ void limProcessMlmSetBssKeyRsp( tpAniSirGlobal pMac, tpSirMsgQ limMsgQ ) { PELOGE(limLog(pMac, LOGE,FL("session does not exist for given sessionId"));) vos_mem_free( limMsgQ->bodyptr ); + limMsgQ->bodyptr = NULL; return; } if( eLIM_MLM_WT_SET_BSS_KEY_STATE == psessionEntry->limMlmState ) @@ -3347,6 +3388,7 @@ void limProcessMlmSetBssKeyRsp( tpAniSirGlobal pMac, tpSirMsgQ limMsgQ ) mlmSetKeysCnf.resultCode = resultCode; vos_mem_free(limMsgQ->bodyptr); + limMsgQ->bodyptr = NULL; // Restore MLME state psessionEntry->limMlmState = psessionEntry->limPrevMlmState; @@ -3437,6 +3479,7 @@ void limProcessMlmRemoveKeyRsp( tpAniSirGlobal pMac, tpSirMsgQ limMsgQ ) // vos_mem_free(limMsgQ->bodyptr); + limMsgQ->bodyptr = NULL; // Restore MLME state psessionEntry->limMlmState = psessionEntry->limPrevMlmState; @@ -3628,6 +3671,7 @@ end: /* Update PE session Id*/ mlmReassocCnf.sessionId = pMlmReassocReq->sessionId; vos_mem_free(pMlmReassocReq); + psessionEntry->pLimMlmReassocReq = NULL; } else { @@ -3892,6 +3936,7 @@ void limProcessStartScanRsp(tpAniSirGlobal pMac, void *body) rrmUpdateStartTSF( pMac, pStartScanParam->startTSF ); #endif vos_mem_free(body); + body = NULL; if( pMac->lim.abortScan ) { limLog( pMac, LOGW, FL(" finish scan") ); @@ -3941,6 +3986,7 @@ void limProcessEndScanRsp(tpAniSirGlobal pMac, void *body) pEndScanParam = (tpEndScanParams) body; status = pEndScanParam->status; vos_mem_free(body); + body = NULL; switch(pMac->lim.gLimHalScanState) { case eLIM_HAL_END_SCAN_WAIT_STATE: @@ -4031,6 +4077,7 @@ void limProcessFinishScanRsp(tpAniSirGlobal pMac, void *body) pFinishScanParam = (tpFinishScanParams) body; status = pFinishScanParam->status; vos_mem_free(body); + body = NULL; limLog(pMac, LOGW, FL("Rcvd FinishScanRsp in state %d"), pMac->lim.gLimHalScanState); @@ -4116,6 +4163,7 @@ void limProcessMlmHalAddBARsp( tpAniSirGlobal pMac, { PELOGE(limLog(pMac, LOGE,FL("session does not exist for given sessionID: %d"),pAddBAParams->sessionId );) vos_mem_free(limMsgQ->bodyptr); + limMsgQ->bodyptr = NULL; return; } #ifdef FEATURE_WLAN_DIAG_SUPPORT_LIM //FEATURE_WLAN_DIAG_SUPPORT @@ -4127,6 +4175,7 @@ void limProcessMlmHalAddBARsp( tpAniSirGlobal pMac, if ( NULL == pMlmAddBACnf ) { limLog( pMac, LOGP, FL(" AllocateMemory failed for pMlmAddBACnf")); vos_mem_free(limMsgQ->bodyptr); + limMsgQ->bodyptr = NULL; return; } vos_mem_set((void *) pMlmAddBACnf, sizeof( tLimMlmAddBACnf ), 0); @@ -4146,6 +4195,7 @@ void limProcessMlmHalAddBARsp( tpAniSirGlobal pMac, else pMlmAddBACnf->addBAResultCode = eSIR_MAC_UNSPEC_FAILURE_STATUS; vos_mem_free(limMsgQ->bodyptr); + limMsgQ->bodyptr = NULL; // Send ADDBA CNF to LIM limPostSmeMessage( pMac, LIM_MLM_ADDBA_CNF, (tANI_U32 *) pMlmAddBACnf ); } @@ -4239,6 +4289,7 @@ pMlmAddBACnf = (tpLimMlmAddBACnf) pMsgBuf; } // Free the memory allocated for LIM_MLM_ADDBA_CNF vos_mem_free(pMsgBuf); + pMsgBuf = NULL; } /** * \brief Process LIM_MLM_DELBA_CNF @@ -4331,6 +4382,7 @@ void limProcessMlmHalBADeleteInd( tpAniSirGlobal pMac, { PELOGE(limLog(pMac, LOGE,FL("session does not exist for given BSSId"));) vos_mem_free(limMsgQ->bodyptr); + limMsgQ->bodyptr = NULL; return; } // First, extract the DPH entry @@ -4394,6 +4446,7 @@ void limProcessMlmHalBADeleteInd( tpAniSirGlobal pMac, returnAfterCleanup: // Free the memory allocated for SIR_LIM_DEL_BA_IND vos_mem_free(limMsgQ->bodyptr); + limMsgQ->bodyptr = NULL; } /** * @function : limProcessSetMimoRsp() @@ -4632,7 +4685,10 @@ limProcessBtampAddBssRsp( tpAniSirGlobal pMac, tpSirMsgQ limMsgQ ,tpPESession ps limPostSmeMessage( pMac, LIM_MLM_START_CNF, (tANI_U32 *) &mlmStartCnf ); end: if( 0 != limMsgQ->bodyptr ) + { vos_mem_free(pAddBssParams); + limMsgQ->bodyptr = NULL; + } } /** diff --git a/CORE/MAC/src/pe/lim/limProcessSmeReqMessages.c b/CORE/MAC/src/pe/lim/limProcessSmeReqMessages.c index da19ed80a8b5..d1c6256e328b 100644 --- a/CORE/MAC/src/pe/lim/limProcessSmeReqMessages.c +++ b/CORE/MAC/src/pe/lim/limProcessSmeReqMessages.c @@ -4275,6 +4275,7 @@ __limProcessSmeStatsRequest(tpAniSirGlobal pMac, tANI_U32 *pMsgBuf) { limLog(pMac, LOGE, FL("session does not exist for given bssId")); vos_mem_free( pMsgBuf ); + pMsgBuf = NULL; return; } @@ -4300,6 +4301,7 @@ __limProcessSmeStatsRequest(tpAniSirGlobal pMac, tANI_U32 *pMsgBuf) default: //Unknown request. PELOGE(limLog(pMac, LOGE, "Unknown Statistics request");) vos_mem_free( pMsgBuf ); + pMsgBuf = NULL; return; } @@ -4317,6 +4319,7 @@ __limProcessSmeStatsRequest(tpAniSirGlobal pMac, tANI_U32 *pMsgBuf) if( eSIR_SUCCESS != (wdaPostCtrlMsg( pMac, &msgQ ))){ limLog(pMac, LOGP, "Unable to forward request"); vos_mem_free( pMsgBuf ); + pMsgBuf = NULL; return; } @@ -4355,6 +4358,7 @@ __limProcessSmeGetStatisticsRequest(tpAniSirGlobal pMac, tANI_U32 *pMsgBuf) if( eSIR_SUCCESS != (wdaPostCtrlMsg( pMac, &msgQ ))){ vos_mem_free( pMsgBuf ); + pMsgBuf = NULL; limLog(pMac, LOGP, "Unable to forward request"); return; } @@ -4385,6 +4389,7 @@ __limProcessSmeGetTsmStatsRequest(tpAniSirGlobal pMac, tANI_U32 *pMsgBuf) if( eSIR_SUCCESS != (wdaPostCtrlMsg( pMac, &msgQ ))){ vos_mem_free( pMsgBuf ); + pMsgBuf = NULL; limLog(pMac, LOGP, "Unable to forward request"); return; } @@ -4420,6 +4425,7 @@ __limProcessSmeGetRoamRssiRequest(tpAniSirGlobal pMac, tANI_U32 *pMsgBuf) if( eSIR_SUCCESS != (wdaPostCtrlMsg( pMac, &msgQ ))){ vos_mem_free( pMsgBuf ); + pMsgBuf = NULL; limLog(pMac, LOGP, "Unable to forward request"); return; } diff --git a/CORE/MAC/src/pe/lim/limSendManagementFrames.c b/CORE/MAC/src/pe/lim/limSendManagementFrames.c index dfd3c895f506..71d71e5a7705 100644 --- a/CORE/MAC/src/pe/lim/limSendManagementFrames.c +++ b/CORE/MAC/src/pe/lim/limSendManagementFrames.c @@ -2672,6 +2672,7 @@ limSendAssocReqMgmtFrame(tpAniSirGlobal pMac, // Free up buffer allocated for mlmAssocReq vos_mem_free(pMlmAssocReq); + pMlmAssocReq = NULL; vos_mem_free(pFrm); return; } // End limSendAssocReqMgmtFrame diff --git a/CORE/MAC/src/pe/lim/limTimerUtils.c b/CORE/MAC/src/pe/lim/limTimerUtils.c index f29f3d66c8f9..71ecd66f5213 100644 --- a/CORE/MAC/src/pe/lim/limTimerUtils.c +++ b/CORE/MAC/src/pe/lim/limTimerUtils.c @@ -777,7 +777,10 @@ limCreateTimers(tpAniSirGlobal pMac) tx_timer_delete(&pMac->lim.limTimers.gLimActiveToPassiveChannelTimer); if(NULL != pMac->lim.gLimPreAuthTimerTable.pTable) + { vos_mem_free(pMac->lim.gLimPreAuthTimerTable.pTable); + pMac->lim.gLimPreAuthTimerTable.pTable = NULL; + } return TX_TIMER_ERROR; diff --git a/CORE/MAC/src/pe/lim/limUtils.c b/CORE/MAC/src/pe/lim/limUtils.c index 3dbf17cdc647..2e8d758557b6 100644 --- a/CORE/MAC/src/pe/lim/limUtils.c +++ b/CORE/MAC/src/pe/lim/limUtils.c @@ -143,6 +143,7 @@ limSearchAndDeleteDialogueToken(tpAniSirGlobal pMac, tANI_U8 token, tANI_U16 ass if(NULL == pMac->lim.pDialogueTokenHead) pMac->lim.pDialogueTokenTail = NULL; vos_mem_free(pCurrNode); + pMac->lim.pDialogueTokenHead = NULL; return eSIR_SUCCESS; } @@ -168,6 +169,7 @@ limSearchAndDeleteDialogueToken(tpAniSirGlobal pMac, tANI_U8 token, tANI_U16 ass if(NULL == pCurrNode->next) pMac->lim.pDialogueTokenTail = pPrevNode; vos_mem_free(pCurrNode); + pMac->lim.pDialogueTokenHead = NULL; return eSIR_SUCCESS; } @@ -5556,6 +5558,7 @@ limProcessAddBaInd(tpAniSirGlobal pMac, tpSirMsgQ limMsg) { limLog(pMac, LOGE,FL("session does not exist for given BSSId")); vos_mem_free(limMsg->bodyptr); + limMsg->bodyptr = NULL; return; } @@ -5567,6 +5570,7 @@ limProcessAddBaInd(tpAniSirGlobal pMac, tpSirMsgQ limMsg) #endif { vos_mem_free(limMsg->bodyptr); + limMsg->bodyptr = NULL; return; } @@ -5592,6 +5596,7 @@ limProcessAddBaInd(tpAniSirGlobal pMac, tpSirMsgQ limMsg) if (!htCapable) { vos_mem_free(limMsg->bodyptr); + limMsg->bodyptr = NULL; return; } #endif @@ -5618,6 +5623,7 @@ limProcessAddBaInd(tpAniSirGlobal pMac, tpSirMsgQ limMsg) } } vos_mem_free(limMsg->bodyptr); + limMsg->bodyptr = NULL; return; } @@ -5771,6 +5777,7 @@ if((psessionEntry = peFindSessionByBssid(pMac,pDelTsParam->bssId,&sessionId))== { limLog(pMac, LOGE,FL("session does not exist for given BssId")); vos_mem_free(limMsg->bodyptr); + limMsg->bodyptr = NULL; return; } @@ -5839,6 +5846,7 @@ error2: vos_mem_free(pDelTsReq); error1: vos_mem_free(limMsg->bodyptr); + limMsg->bodyptr = NULL; return; } @@ -7402,6 +7410,7 @@ void limProcessAddStaSelfRsp(tpAniSirGlobal pMac,tpSirMsgQ limMsgQ) /// Buffer not available. Log error limLog(pMac, LOGP, FL("call to AllocateMemory failed for Add Sta self RSP")); vos_mem_free(pAddStaSelfParams); + limMsgQ->bodyptr = NULL; return; } @@ -7414,6 +7423,7 @@ void limProcessAddStaSelfRsp(tpAniSirGlobal pMac,tpSirMsgQ limMsgQ) vos_mem_copy( pRsp->selfMacAddr, pAddStaSelfParams->selfMacAddr, sizeof(tSirMacAddr) ); vos_mem_free(pAddStaSelfParams); + limMsgQ->bodyptr = NULL; mmhMsg.type = eWNI_SME_ADD_STA_SELF_RSP; mmhMsg.bodyptr = pRsp; @@ -7439,6 +7449,7 @@ void limProcessDelStaSelfRsp(tpAniSirGlobal pMac,tpSirMsgQ limMsgQ) /// Buffer not available. Log error limLog(pMac, LOGP, FL("call to AllocateMemory failed for Add Sta self RSP")); vos_mem_free(pDelStaSelfParams); + limMsgQ->bodyptr = NULL; return; } @@ -7451,6 +7462,7 @@ void limProcessDelStaSelfRsp(tpAniSirGlobal pMac,tpSirMsgQ limMsgQ) vos_mem_copy( pRsp->selfMacAddr, pDelStaSelfParams->selfMacAddr, sizeof(tSirMacAddr) ); vos_mem_free(pDelStaSelfParams); + limMsgQ->bodyptr = NULL; mmhMsg.type = eWNI_SME_DEL_STA_SELF_RSP; mmhMsg.bodyptr = pRsp; |
