Fix definitely lost reported by valgrind. --- src/clm/clmd/clms_evt.cc | 5 +---- src/clm/clmd/clms_mbcsv.cc | 10 ++++++++++ src/clm/clmd/clms_mds.cc | 2 ++ src/mbc/mbcsv_mds.c | 3 +++ 4 files changed, 16 insertions(+), 4 deletions(-)
diff --git a/src/clm/clmd/clms_evt.cc b/src/clm/clmd/clms_evt.cc index 28f5596ec..e8577060e 100644 --- a/src/clm/clmd/clms_evt.cc +++ b/src/clm/clmd/clms_evt.cc @@ -2136,10 +2136,7 @@ void clms_remove_node_down_rec(SaClmNodeIdT node_id) { */ void clms_evt_destroy(CLMSV_CLMS_EVT *evt) { osafassert(evt != nullptr); - if (evt->info.msg.info.api_info.type == CLMSV_CLUSTER_JOIN_REQ) { - TRACE("not calloced in server code,don't free it here"); - } else - free(evt); + free(evt); } /*clms ack to response msg from clma diff --git a/src/clm/clmd/clms_mbcsv.cc b/src/clm/clmd/clms_mbcsv.cc index 049b32c41..aa86b46c5 100644 --- a/src/clm/clmd/clms_mbcsv.cc +++ b/src/clm/clmd/clms_mbcsv.cc @@ -2092,6 +2092,9 @@ static uint32_t ckpt_decode_cold_sync(CLMS_CB *cb, NCS_MBCSV_CB_ARG *cbk_arg) { CLMS_CKPT_REC msg; CLMS_CKPT_REC *data = nullptr; uint32_t num_rec = 0; + uint8_t data_cnt[16]; + uint32_t num_of_async_upd; + uint8_t *ptr; TRACE_ENTER(); /* @@ -2188,6 +2191,13 @@ static uint32_t ckpt_decode_cold_sync(CLMS_CB *cb, NCS_MBCSV_CB_ARG *cbk_arg) { --num_rec; } + /* Get the async update count */ + ptr = ncs_dec_flatten_space(&cbk_arg->info.decode.i_uba, data_cnt, + sizeof(uint32_t)); + num_of_async_upd = ncs_decode_32bit(&ptr); + cb->async_upd_cnt = num_of_async_upd; + ncs_dec_skip_space(&cbk_arg->info.decode.i_uba, sizeof(uint32_t)); + done: if (rc != NCSCC_RC_SUCCESS) { /* Do not allow standby to get out of sync */ diff --git a/src/clm/clmd/clms_mds.cc b/src/clm/clmd/clms_mds.cc index 5a77885ac..45d1453e4 100644 --- a/src/clm/clmd/clms_mds.cc +++ b/src/clm/clmd/clms_mds.cc @@ -1247,6 +1247,8 @@ static uint32_t clms_mds_svc_event(struct ncsmds_callback_info *info) { rc = NCSCC_RC_FAILURE; goto done; } + } else { + free(evt); } } done: diff --git a/src/mbc/mbcsv_mds.c b/src/mbc/mbcsv_mds.c index f3370f8e2..efb86c42a 100644 --- a/src/mbc/mbcsv_mds.c +++ b/src/mbc/mbcsv_mds.c @@ -391,6 +391,9 @@ uint32_t mbcsv_mds_rcv(NCSMDS_CALLBACK_INFO *cbinfo) TRACE_LEAVE2("ipc send failed"); return NCSCC_RC_FAILURE; } + } else { + if (msg) + m_MMGR_FREE_MBCSV_EVT(msg); } return NCSCC_RC_SUCCESS; -- 2.17.1 _______________________________________________ Opensaf-devel mailing list Opensaf-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/opensaf-devel