From ae0db67709037b00f400d3a4116f41cc254db5e9 Mon Sep 17 00:00:00 2001 From: Gilles Gouaillardet Date: Fri, 31 Jan 2025 14:03:31 +0900 Subject: [PATCH] coll/acoll: plug a memory leak Have mca_coll_acoll_comm_query() not leak when invoked on an inter-communicator nor a single process communicator. Refs. open-mpi/ompi#13070 Signed-off-by: Gilles Gouaillardet --- ompi/mca/coll/acoll/coll_acoll_module.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/ompi/mca/coll/acoll/coll_acoll_module.c b/ompi/mca/coll/acoll/coll_acoll_module.c index bbab6034132..3924e755dc0 100644 --- a/ompi/mca/coll/acoll/coll_acoll_module.c +++ b/ompi/mca/coll/acoll/coll_acoll_module.c @@ -60,11 +60,6 @@ mca_coll_base_module_t *mca_coll_acoll_comm_query(struct ompi_communicator_t *co { mca_coll_acoll_module_t *acoll_module; - acoll_module = OBJ_NEW(mca_coll_acoll_module_t); - if (NULL == acoll_module) { - return NULL; - } - if (OMPI_COMM_IS_INTER(comm)) { *priority = 0; return NULL; @@ -74,6 +69,11 @@ mca_coll_base_module_t *mca_coll_acoll_comm_query(struct ompi_communicator_t *co return NULL; } + acoll_module = OBJ_NEW(mca_coll_acoll_module_t); + if (NULL == acoll_module) { + return NULL; + } + *priority = mca_coll_acoll_priority; /* Set topology params */