Hi Hoan, Can you please push
-AVM On 6/13/2016 11:58 AM, A V Mahesh wrote: > Hi Hoang Vo, > > ACK , Not tested. > > By the way which GCC/tool given these warnings ? > > -AVM > > On 6/13/2016 9:20 AM, Hoang Vo wrote: >> osaf/services/saf/cpsv/cpd/cpd_db.c | 8 ++--- >> osaf/services/saf/cpsv/cpd/cpd_evt.c | 4 +- >> osaf/services/saf/cpsv/cpd/cpd_imm.c | 2 +- >> osaf/services/saf/cpsv/cpd/cpd_tmr.c | 2 +- >> osaf/services/saf/cpsv/cpnd/cpnd_evt.c | 49 >> ++++++++++++++++---------------- >> osaf/services/saf/cpsv/cpnd/cpnd_proc.c | 2 +- >> 6 files changed, 32 insertions(+), 35 deletions(-) >> >> >> This enhancement fix following warning results from cppcheck 1.74: >> Either the condition is redundant or there is possible null pointer >> dereference >> >> This enhancement does not fix following warnings when they are not >> problems: >> Possible null pointer dereference >> Style and performance warnings >> >> diff --git a/osaf/services/saf/cpsv/cpd/cpd_db.c >> b/osaf/services/saf/cpsv/cpd/cpd_db.c >> --- a/osaf/services/saf/cpsv/cpd/cpd_db.c >> +++ b/osaf/services/saf/cpsv/cpd/cpd_db.c >> @@ -843,12 +843,10 @@ uint32_t cpd_cpnd_info_node_delete(CPD_C >> } >> /* Free the Client Node */ >> - if (cpnd_info_node) { >> - if (cpnd_info_node->cpnd_ret_timer.uarg) >> - ncshm_destroy_hdl(NCS_SERVICE_ID_CPD, >> cpnd_info_node->cpnd_ret_timer.uarg); >> + if (cpnd_info_node->cpnd_ret_timer.uarg) >> + ncshm_destroy_hdl(NCS_SERVICE_ID_CPD, >> cpnd_info_node->cpnd_ret_timer.uarg); >> - m_MMGR_FREE_CPD_CPND_INFO_NODE(cpnd_info_node); >> - } >> + m_MMGR_FREE_CPD_CPND_INFO_NODE(cpnd_info_node); >> return rc; >> diff --git a/osaf/services/saf/cpsv/cpd/cpd_evt.c >> b/osaf/services/saf/cpsv/cpd/cpd_evt.c >> --- a/osaf/services/saf/cpsv/cpd/cpd_evt.c >> +++ b/osaf/services/saf/cpsv/cpd/cpd_evt.c >> @@ -1439,7 +1439,7 @@ static uint32_t cpd_evt_proc_mds_evt(CPD >> /* No Checkpoints on this node, */ >> TRACE_LEAVE(); >> return NCSCC_RC_SUCCESS; >> - } else if (node_info && (node_info->ckpt_ref_list == >> NULL)) { >> + } else if (node_info->ckpt_ref_list == NULL) { >> cpd_cpnd_info_node_delete(cb, node_info); >> TRACE_LEAVE(); >> return NCSCC_RC_SUCCESS; >> @@ -1453,7 +1453,7 @@ static uint32_t cpd_evt_proc_mds_evt(CPD >> /* No Checkpoints on this node, */ >> return NCSCC_RC_SUCCESS; >> } >> - else if (node_info && (node_info->ckpt_ref_list == >> NULL)) { >> + else if (node_info->ckpt_ref_list == NULL) { >> cpd_cpnd_info_node_delete(cb, node_info); >> TRACE_LEAVE(); >> return NCSCC_RC_SUCCESS; >> diff --git a/osaf/services/saf/cpsv/cpd/cpd_imm.c >> b/osaf/services/saf/cpsv/cpd/cpd_imm.c >> --- a/osaf/services/saf/cpsv/cpd/cpd_imm.c >> +++ b/osaf/services/saf/cpsv/cpd/cpd_imm.c >> @@ -904,7 +904,7 @@ SaUint32T cpd_get_scAbsenceAllowed_attr( >> /* Handle the global scAbsenceAllowed_flag */ >> attribute = attributes[0]; >> - TRACE("%s attrName \"%s\"",__FUNCTION__,attribute->attrName); >> + TRACE("%s attrName >> \"%s\"",__FUNCTION__,attribute?attribute->attrName:""); >> if ((attribute != NULL) && (attribute->attrValuesNumber != 0)) { >> /* scAbsenceAllowed has value. Get the value */ >> value = attribute->attrValues[0]; >> diff --git a/osaf/services/saf/cpsv/cpd/cpd_tmr.c >> b/osaf/services/saf/cpsv/cpd/cpd_tmr.c >> --- a/osaf/services/saf/cpsv/cpd/cpd_tmr.c >> +++ b/osaf/services/saf/cpsv/cpd/cpd_tmr.c >> @@ -42,7 +42,7 @@ void cpd_timer_expiry(NCSCONTEXT uarg) >> CPSV_EVT *evt = NULL; >> uint32_t cpd_hdl = m_CPD_GET_CB_HDL; >> - TRACE("cpd_timer_expiry(uarg=%p, type=%u)", uarg, tmr->type); >> + TRACE("cpd_timer_expiry(uarg=%p, type=%u)", uarg, tmr ? >> tmr->type : 0); >> /* post a message to the corresponding component */ >> if ((cb = (CPD_CB *)ncshm_take_hdl(NCS_SERVICE_ID_CPD, >> cpd_hdl)) == NULL) >> diff --git a/osaf/services/saf/cpsv/cpnd/cpnd_evt.c >> b/osaf/services/saf/cpsv/cpnd/cpnd_evt.c >> --- a/osaf/services/saf/cpsv/cpnd/cpnd_evt.c >> +++ b/osaf/services/saf/cpsv/cpnd/cpnd_evt.c >> @@ -753,7 +753,7 @@ static uint32_t cpnd_evt_proc_ckpt_open( >> send_evt.info.cpa.info.openRsp.error = SA_AIS_ERR_NO_MEMORY; >> goto agent_rsp; >> } >> - if (out_evt && out_evt->info.cpnd.info.ckpt_info.error != >> SA_AIS_OK) { >> + if (out_evt->info.cpnd.info.ckpt_info.error != SA_AIS_OK) { >> send_evt.info.cpa.info.openRsp.error = >> out_evt->info.cpnd.info.ckpt_info.error; >> goto agent_rsp; >> } >> @@ -866,10 +866,8 @@ static uint32_t cpnd_evt_proc_ckpt_open( >> goto ckpt_shm_node_free_error; >> } >> } >> - if (out_evt) { >> - cpnd_evt_destroy(out_evt); >> - out_evt = NULL; >> - } >> + cpnd_evt_destroy(out_evt); >> + out_evt = NULL; >> /* if not the first collocated replica, response will >> come from REP_ADD processing */ >> @@ -2498,20 +2496,18 @@ static uint32_t cpnd_evt_proc_ckpt_sect_ >> /* Send the arrival callback */ >> memset(&ckpt_data, '\0', sizeof(CPSV_CKPT_DATA)); >> - if (sec_info) { >> - ckpt_data.sec_id = sec_info->sec_id; >> - ckpt_data.data = NULL; >> - ckpt_data.dataSize = 0; >> - ckpt_data.dataOffset = 0; >> - >> - memset(&ckpt_access, '\0', sizeof(CPSV_CKPT_ACCESS)); >> - ckpt_access.ckpt_id = cp_node->ckpt_id; >> - ckpt_access.lcl_ckpt_id = evt->info.sec_delReq.lcl_ckpt_id; >> - ckpt_access.agent_mdest = evt->info.sec_delReq.agent_mdest; >> - ckpt_access.num_of_elmts = 1; >> - ckpt_access.data = &ckpt_data; >> - cpnd_proc_ckpt_arrival_info_ntfy(cb, cp_node, >> &ckpt_access, sinfo); >> - } >> + ckpt_data.sec_id = sec_info->sec_id; >> + ckpt_data.data = NULL; >> + ckpt_data.dataSize = 0; >> + ckpt_data.dataOffset = 0; >> + >> + memset(&ckpt_access, '\0', sizeof(CPSV_CKPT_ACCESS)); >> + ckpt_access.ckpt_id = cp_node->ckpt_id; >> + ckpt_access.lcl_ckpt_id = evt->info.sec_delReq.lcl_ckpt_id; >> + ckpt_access.agent_mdest = evt->info.sec_delReq.agent_mdest; >> + ckpt_access.num_of_elmts = 1; >> + ckpt_access.data = &ckpt_data; >> + cpnd_proc_ckpt_arrival_info_ntfy(cb, cp_node, &ckpt_access, >> sinfo); >> if (cp_node->cpnd_dest_list != NULL) { >> /* yes ,go trough cp_node->cpnd_dest_list(sync send) */ >> @@ -3958,11 +3954,7 @@ static uint32_t cpnd_proc_cpd_new_active >> break; >> } >> - if (node) >> - m_MMGR_FREE_CPND_CPD_DEFERRED_REQ_NODE(node); >> - >> - node = NULL; >> - >> + m_MMGR_FREE_CPND_CPD_DEFERRED_REQ_NODE(node); >> node = (CPND_CPD_DEFERRED_REQ_NODE >> *)ncs_dequeue(&cb->cpnd_cpd_deferred_reqs_list); >> } >> TRACE_LEAVE(); >> @@ -4668,7 +4660,7 @@ static uint32_t cpnd_transfer_replica(CP >> while (1) { >> - if (((tmp_sec_info) && ((size + tmp_sec_info->sec_size) > >> MAX_SYNC_TRANSFER_SIZE)) >> + if (((size + tmp_sec_info->sec_size) > MAX_SYNC_TRANSFER_SIZE) >> || (total_num == cp_node->replica_info.n_secs)) { >> send_evt.info.cpnd.info.ckpt_nd2nd_sync.num_of_elmts = num; >> @@ -4726,6 +4718,13 @@ static uint32_t cpnd_transfer_replica(CP >> total_num++; >> tmp_sec_info = >> cpnd_ckpt_sec_get_next(&cp_node->replica_info, tmp_sec_info); >> + if (tmp_sec_info == NULL) { >> + rc = NCSCC_RC_FAILURE; >> + TRACE_4("cpnd ckpt memory get next allocation failed"); >> + send_evt.info.cpnd.info.ckpt_nd2nd_sync.data = sec_data; >> + >> cpnd_proc_free_cpsv_ckpt_data(send_evt.info.cpnd.info.ckpt_nd2nd_sync.data); >> + return rc; >> + } >> } >> TRACE_LEAVE(); >> diff --git a/osaf/services/saf/cpsv/cpnd/cpnd_proc.c >> b/osaf/services/saf/cpsv/cpnd/cpnd_proc.c >> --- a/osaf/services/saf/cpsv/cpnd/cpnd_proc.c >> +++ b/osaf/services/saf/cpsv/cpnd/cpnd_proc.c >> @@ -2778,7 +2778,7 @@ SaUint32T cpnd_get_scAbsenceAllowed_attr >> /* Handle the global scAbsenceAllowed_flag */ >> attribute = attributes[0]; >> - TRACE("%s attrName \"%s\"",__FUNCTION__,attribute->attrName); >> + TRACE("%s attrName >> \"%s\"",__FUNCTION__,attribute?attribute->attrName:""); >> if ((attribute != NULL) && (attribute->attrValuesNumber != 0)) { >> /* scAbsenceAllowed has value. Get the value */ >> value = attribute->attrValues[0]; > ------------------------------------------------------------------------------ _______________________________________________ Opensaf-devel mailing list Opensaf-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/opensaf-devel