}while(pagInfo != NULLP);
cmHashListDelete(&(cellCb->pagingInfoMap), (PTR)pagInfoLLFromPF);
+ DU_FREE(pagInfoLLFromPF, sizeof(DuPagInfoList));
return ROK;
}
uint8_t DuProcMacCellDeleteRsp(Pst *pst, MacCellDeleteRsp *deleteRsp)
{
uint8_t ret = ROK;
- uint16_t cellIdx=0;
-
+ uint16_t cellIdx=0, pfIdx=0;
+ DuPagInfoList *pagInfoLLFromPF=NULLP;
+
if(deleteRsp)
{
if(deleteRsp->result == SUCCESSFUL_RSP)
DU_LOG("\nINFO --> DU APP : MAC CELL Delete Response : SUCCESS [CELL IDX : %d]", deleteRsp->cellId);
if(duCb.actvCellLst[cellIdx] && (duCb.actvCellLst[cellIdx]->cellId == deleteRsp->cellId))
{
+ for(pfIdx =0; pfIdx < MAX_SFN; pfIdx++)
+ {
+ pagInfoLLFromPF = findPagingInfoFromMap(pfIdx, &(duCb.actvCellLst[cellIdx]->pagingInfoMap));
+ if(pagInfoLLFromPF)
+ {
+ cmHashListDelete(&(duCb.actvCellLst[cellIdx]->pagingInfoMap), (PTR)pagInfoLLFromPF);
+ DU_FREE(pagInfoLLFromPF, sizeof(DuPagInfoList));
+ }
+ }
+
memset(duCb.actvCellLst[cellIdx], 0, sizeof(DuCellCb));
gCellStatus = CELL_DOWN;
{
if(pagingMsg->pagingRecordList)
{
- if(pagingMsg->pagingRecordList->list.array == NULLP)
+ if(pagingMsg->pagingRecordList->list.array != NULLP)
{
for(recordIdx = 0; recordIdx < pagingMsg->pagingRecordList->list.count; recordIdx++)
{