diff --git a/openair2/ENB_APP/flexran_agent_common.c b/openair2/ENB_APP/flexran_agent_common.c index 592af05f2e8ba85ba7789751bbe55edc1c529923..04a001ccdc679dc0081c72ce24fa9aadcf852ad4 100644 --- a/openair2/ENB_APP/flexran_agent_common.c +++ b/openair2/ENB_APP/flexran_agent_common.c @@ -280,15 +280,17 @@ int flexran_agent_destroy_enb_config_reply(Protocol__FlexranMessage *msg) { if(msg->msg_case != PROTOCOL__FLEXRAN_MESSAGE__MSG_ENB_CONFIG_REPLY_MSG) goto error; free(msg->enb_config_reply_msg->header); - int i, j; Protocol__FlexEnbConfigReply *reply = msg->enb_config_reply_msg; - for(i = 0; i < reply->n_cell_config;i++) { - free(reply->cell_config[i]->mbsfn_subframe_config_rfoffset); - free(reply->cell_config[i]->mbsfn_subframe_config_rfperiod); - free(reply->cell_config[i]->mbsfn_subframe_config_sfalloc); + for (int i = 0; i < reply->n_cell_config;i++) { + if (reply->cell_config[i]->mbsfn_subframe_config_rfoffset) + free(reply->cell_config[i]->mbsfn_subframe_config_rfoffset); + if (reply->cell_config[i]->mbsfn_subframe_config_rfperiod) + free(reply->cell_config[i]->mbsfn_subframe_config_rfperiod); + if (reply->cell_config[i]->mbsfn_subframe_config_sfalloc) + free(reply->cell_config[i]->mbsfn_subframe_config_sfalloc); if (reply->cell_config[i]->si_config != NULL) { - for(j = 0; j < reply->cell_config[i]->si_config->n_si_message;j++){ + for (int j = 0; j < reply->cell_config[i]->si_config->n_si_message;j++){ free(reply->cell_config[i]->si_config->si_message[j]); } free(reply->cell_config[i]->si_config->si_message);