1
1

fix for group_compare, adding MPI_GROUP_EMPTY as a result for group_intersection/difference/union

This commit was SVN r2562.
Этот коммит содержится в:
Edgar Gabriel 2004-09-09 16:01:44 +00:00
родитель c1ba40c631
Коммит cfca6e88c1
4 изменённых файлов: 21 добавлений и 2 удалений

Просмотреть файл

@ -91,11 +91,11 @@ int MPI_Group_compare(MPI_Group group1, MPI_Group group2, int *result) {
/* set comparison result */
if( identical ) {
*result=MPI_UNEQUAL;
*result=MPI_IDENT;
} else if( similar ) {
*result=MPI_SIMILAR;
} else {
*result=MPI_IDENT;
*result=MPI_UNEQUAL;
}
return return_value;

Просмотреть файл

@ -69,6 +69,12 @@ int MPI_Group_difference(MPI_Group group1, MPI_Group group2,
new_group_size++;
} /* end proc loop */
if ( 0 == new_group_size ) {
*new_group = MPI_GROUP_EMPTY;
OBJ_RETAIN(MPI_GROUP_EMPTY);
return MPI_SUCCESS;
}
/* allocate a new ompi_group_t structure */
new_group_pointer=ompi_group_allocate(new_group_size);
if( NULL == new_group_pointer ) {

Просмотреть файл

@ -64,6 +64,13 @@ int MPI_Group_intersection(MPI_Group group1, MPI_Group group2,
} /* end proc2 loop */
} /* end proc1 loop */
if ( 0 == group_size ) {
*new_group = MPI_GROUP_EMPTY;
OBJ_RETAIN(MPI_GROUP_EMPTY);
return MPI_SUCCESS;
}
/* fill in new group */
new_group_pointer=ompi_group_allocate(group_size);
if( NULL == new_group_pointer ) {

Просмотреть файл

@ -72,6 +72,12 @@ int MPI_Group_union(MPI_Group group1, MPI_Group group2, MPI_Group *new_group)
new_group_size++;
} /* end proc loop */
if ( 0 == new_group_size ) {
*new_group = MPI_GROUP_EMPTY;
OBJ_RETAIN(MPI_GROUP_EMPTY);
return MPI_SUCCESS;
}
/* get new group struct */
new_group_pointer = ompi_group_allocate(new_group_size);
if (NULL == new_group_pointer) {