diff --git a/src/mca/gpr/replica/gpr_replica.c b/src/mca/gpr/replica/gpr_replica.c index b491025ff6..022ca8bc42 100644 --- a/src/mca/gpr/replica/gpr_replica.c +++ b/src/mca/gpr/replica/gpr_replica.c @@ -492,6 +492,7 @@ ompi_list_t* gpr_replica_get(ompi_registry_mode_t addr_mode, return answer; } if (NULL == tokens) { /* wildcard case - return everything */ + keylist = NULL; keys = NULL; } else { @@ -534,7 +535,8 @@ ompi_list_t* gpr_replica_get(ompi_registry_mode_t addr_mode, CLEANUP: /* release list of keys */ - OBJ_RELEASE(keylist); + if(NULL != keylist) + OBJ_RELEASE(keylist); if (NULL != keys) { free(keys); diff --git a/src/mca/gpr/replica/gpr_replica_internals.c b/src/mca/gpr/replica/gpr_replica_internals.c index 758a56299f..2d29b62f7d 100644 --- a/src/mca/gpr/replica/gpr_replica_internals.c +++ b/src/mca/gpr/replica/gpr_replica_internals.c @@ -575,7 +575,7 @@ ompi_registry_notify_message_t *gpr_replica_construct_notify_message(ompi_regist /* compute number of tokens */ tokptr = tokens; num_tokens = 0; - while (NULL != *tokptr) { + while (tokptr && NULL != *tokptr) { num_tokens++; tokptr++; }