Skip to content

Commit aed06e6

Browse files
committed
Protect against NULL node pointer
Signed-off-by: Ralph Castain <rhc@pmix.org>
1 parent 2794ae4 commit aed06e6

File tree

1 file changed

+13
-9
lines changed

1 file changed

+13
-9
lines changed

orte/util/nidmap.c

Lines changed: 13 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1032,7 +1032,7 @@ int orte_util_decode_ppn(orte_job_t *jdata,
10321032
{
10331033
orte_std_cntr_t index;
10341034
orte_app_idx_t n;
1035-
int cnt, rc;
1035+
int cnt, rc, m;
10361036
opal_byte_object_t *boptr;
10371037
bool compressed;
10381038
uint8_t *bytes;
@@ -1043,8 +1043,8 @@ int orte_util_decode_ppn(orte_job_t *jdata,
10431043
opal_buffer_t bucket;
10441044

10451045
/* reset any flags */
1046-
for (n=0; n < orte_node_pool->size; n++) {
1047-
if (NULL != (node = (orte_node_t*)opal_pointer_array_get_item(orte_node_pool, n))) {
1046+
for (m=0; m < orte_node_pool->size; m++) {
1047+
if (NULL != (node = (orte_node_t*)opal_pointer_array_get_item(orte_node_pool, m))) {
10481048
ORTE_FLAG_UNSET(node, ORTE_NODE_FLAG_MAPPED);
10491049
}
10501050
}
@@ -1144,19 +1144,23 @@ int orte_util_decode_ppn(orte_job_t *jdata,
11441144
}
11451145

11461146
/* reset any flags */
1147-
for (n=0; n < jdata->map->nodes->size; n++) {
1148-
node = (orte_node_t*)opal_pointer_array_get_item(jdata->map->nodes, n);
1149-
ORTE_FLAG_UNSET(node, ORTE_NODE_FLAG_MAPPED);
1147+
for (m=0; m < jdata->map->nodes->size; m++) {
1148+
node = (orte_node_t*)opal_pointer_array_get_item(jdata->map->nodes, m);
1149+
if (NULL != node) {
1150+
ORTE_FLAG_UNSET(node, ORTE_NODE_FLAG_MAPPED);
1151+
}
11501152
}
11511153

11521154
return ORTE_SUCCESS;
11531155

11541156
error:
11551157
OBJ_DESTRUCT(&bucket);
11561158
/* reset any flags */
1157-
for (n=0; n < jdata->map->nodes->size; n++) {
1158-
node = (orte_node_t*)opal_pointer_array_get_item(jdata->map->nodes, n);
1159-
ORTE_FLAG_UNSET(node, ORTE_NODE_FLAG_MAPPED);
1159+
for (m=0; m < jdata->map->nodes->size; m++) {
1160+
node = (orte_node_t*)opal_pointer_array_get_item(jdata->map->nodes, m);
1161+
if (NULL != node) {
1162+
ORTE_FLAG_UNSET(node, ORTE_NODE_FLAG_MAPPED);
1163+
}
11601164
}
11611165
return rc;
11621166
}

0 commit comments

Comments
 (0)