1
1
/* -*- Mode: C; c-basic-offset:4 ; indent-tabs-mode:nil -*- */
2
2
/*
3
3
* Copyright (c) 2014-2016 Intel, Inc. All rights reserved.
4
- * Copyright (c) 2014-2016 Research Organization for Information Science
4
+ * Copyright (c) 2014-2017 Research Organization for Information Science
5
5
* and Technology (RIST). All rights reserved.
6
6
* Copyright (c) 2014-2015 Mellanox Technologies, Inc.
7
7
* All rights reserved.
@@ -294,7 +294,6 @@ static void _event_hdlr(int sd, short args, void *cbdata)
294
294
if (sing -> code == chain -> status ) {
295
295
/* found it - invoke the handler, pointing its
296
296
* callback function to our progression function */
297
- OBJ_RETAIN (chain );
298
297
chain -> sing = sing ;
299
298
opal_output_verbose (2 , opal_pmix_base_framework .framework_output ,
300
299
"%s _EVENT_HDLR CALLING SINGLE EVHDLR" ,
@@ -313,7 +312,6 @@ static void _event_hdlr(int sd, short args, void *cbdata)
313
312
if (multi -> codes [n ] == chain -> status ) {
314
313
/* found it - invoke the handler, pointing its
315
314
* callback function to our progression function */
316
- OBJ_RETAIN (chain );
317
315
chain -> multi = multi ;
318
316
opal_output_verbose (2 , opal_pmix_base_framework .framework_output ,
319
317
"%s _EVENT_HDLR CALLING MULTI EVHDLR" ,
@@ -340,7 +338,6 @@ static void _event_hdlr(int sd, short args, void *cbdata)
340
338
/* finally, pass it to any default handlers */
341
339
if (0 < opal_list_get_size (& mca_pmix_ext2x_component .default_events )) {
342
340
def = (opal_pmix2x_default_event_t * )opal_list_get_first (& mca_pmix_ext2x_component .default_events );
343
- OBJ_RETAIN (chain );
344
341
chain -> def = def ;
345
342
opal_output_verbose (2 , opal_pmix_base_framework .framework_output ,
346
343
"%s _EVENT_HDLR CALLING DEFAULT EVHDLR" ,
@@ -355,6 +352,9 @@ static void _event_hdlr(int sd, short args, void *cbdata)
355
352
if (NULL != chain -> final_cbfunc ) {
356
353
chain -> final_cbfunc (PMIX_SUCCESS , chain -> final_cbdata );
357
354
}
355
+
356
+ OBJ_RELEASE (chain );
357
+
358
358
return ;
359
359
}
360
360
@@ -1438,6 +1438,9 @@ static void chcon(opal_pmix2x_event_chain_t *p)
1438
1438
static void chdes (opal_pmix2x_event_chain_t * p )
1439
1439
{
1440
1440
OPAL_LIST_DESTRUCT (& p -> results );
1441
+ if (NULL != p -> info ) {
1442
+ OPAL_LIST_RELEASE (p -> info );
1443
+ }
1441
1444
}
1442
1445
OBJ_CLASS_INSTANCE (opal_pmix2x_event_chain_t ,
1443
1446
opal_list_item_t ,
0 commit comments