From 62fd56f9043684d15ec7643b0698e9fc31a71398 Mon Sep 17 00:00:00 2001 From: Robert Schmidt Date: Thu, 24 Aug 2023 11:13:02 +0200 Subject: [PATCH] DCCH free memory --- openair2/RRC/NR/rrc_gNB.c | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/openair2/RRC/NR/rrc_gNB.c b/openair2/RRC/NR/rrc_gNB.c index ba51d7ec3c..505b22ab50 100644 --- a/openair2/RRC/NR/rrc_gNB.c +++ b/openair2/RRC/NR/rrc_gNB.c @@ -1384,7 +1384,7 @@ static inline uint64_t bitStr_to_uint64(BIT_STRING_t *asn) { return result; } -static void rrc_gNB_process_MeasurementReport(rrc_gNB_ue_context_t *ue_context, const NR_MeasurementReport_t *measurementReport) +static void rrc_gNB_process_MeasurementReport(rrc_gNB_ue_context_t *ue_context, NR_MeasurementReport_t *measurementReport) { if (LOG_DEBUGFLAG(DEBUG_ASN1)) xer_fprint(stdout, &asn_DEF_NR_MeasurementReport, (void *)measurementReport); @@ -1393,14 +1393,15 @@ static void rrc_gNB_process_MeasurementReport(rrc_gNB_ue_context_t *ue_context, && measurementReport->criticalExtensions.choice.measurementReport != NULL); gNB_RRC_UE_t *ue_ctxt = &ue_context->ue_context; - if (ue_ctxt->measResults != NULL) { - ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_NR_MeasResults, ue_ctxt->measResults); - ue_ctxt->measResults = NULL; - } + ASN_STRUCT_FREE(asn_DEF_NR_MeasResults, ue_ctxt->measResults); + ue_ctxt->measResults = NULL; const NR_MeasId_t id = measurementReport->criticalExtensions.choice.measurementReport->measResults.measId; AssertFatal(id, "unexpected MeasResult for MeasurementId %ld received\n", id); asn1cCallocOne(ue_ctxt->measResults, measurementReport->criticalExtensions.choice.measurementReport->measResults); + /* we "keep" the measurement report, so set to 0 */ + free(measurementReport->criticalExtensions.choice.measurementReport); + measurementReport->criticalExtensions.choice.measurementReport = NULL; } static int handle_rrcReestablishmentComplete(const protocol_ctxt_t *const ctxt_pP,