Skip to content

Commit 930e137

Browse files
authored
Merge pull request #44 from hppritcha/upstream_pr2053
Protect against uninitialized var
2 parents 1be5490 + 05a008e commit 930e137

File tree

1 file changed

+8
-2
lines changed

1 file changed

+8
-2
lines changed

src/mca/plm/base/plm_base_launch_support.c

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1291,7 +1291,7 @@ void prte_plm_base_daemon_callback(int status, pmix_proc_t *sender, pmix_data_bu
12911291
char *ptr;
12921292
int idx;
12931293
pmix_status_t ret;
1294-
prte_proc_t *daemon = NULL, *dptr;
1294+
prte_proc_t *daemon = NULL, *dptr, *d1;
12951295
prte_job_t *jdata;
12961296
pmix_proc_t dname;
12971297
pmix_data_buffer_t *relay;
@@ -1635,13 +1635,19 @@ void prte_plm_base_daemon_callback(int status, pmix_proc_t *sender, pmix_data_bu
16351635
if (1 == dname.rank) {
16361636
/* process any cached daemons */
16371637
PMIX_CONSTRUCT(&cachelist, pmix_list_t);
1638+
d1 = (prte_proc_t *) pmix_pointer_array_get_item(jdatorted->procs, 1);
1639+
if (NULL == d1) {
1640+
PRTE_ERROR_LOG(PRTE_ERR_NOT_FOUND);
1641+
prted_failed_launch = true;
1642+
goto CLEANUP;
1643+
}
16381644
while (NULL != (dptr = (prte_proc_t*)pmix_list_remove_first(&prte_plm_globals.daemon_cache))) {
16391645
PMIX_OUTPUT_VERBOSE((5, prte_plm_base_framework.framework_output,
16401646
"%s plm:base:prted_daemon_cback processing cached daemon %s",
16411647
PRTE_NAME_PRINT(PRTE_PROC_MY_NAME),
16421648
PRTE_NAME_PRINT(&dptr->name)));
16431649
if (0 == strcmp(dptr->node->topology->sig, sig)) {
1644-
dptr->node->topology = t;
1650+
dptr->node->topology = d1->node->topology;
16451651
dptr->node->available = prte_hwloc_base_filter_cpus(topo);
16461652
prte_hwloc_base_setup_summary(topo);
16471653
jdatorted->num_reported++;

0 commit comments

Comments
 (0)