diff --git a/ompi/mca/common/ompio/common_ompio_file_view.c b/ompi/mca/common/ompio/common_ompio_file_view.c index df864025af..9b0be26289 100644 --- a/ompi/mca/common/ompio/common_ompio_file_view.c +++ b/ompi/mca/common/ompio/common_ompio_file_view.c @@ -32,6 +32,7 @@ static int datatype_duplicate (ompi_datatype_t *oldtype, ompi_datatype_t **newt { ompi_datatype_t *type; if( ompi_datatype_is_predefined(oldtype) ) { + OBJ_RETAIN(oldtype); *newtype = oldtype; return OMPI_SUCCESS; } diff --git a/ompi/mca/io/ompio/io_ompio_file_set_view.c b/ompi/mca/io/ompio/io_ompio_file_set_view.c index 2b9ac21b9d..fa14360a9b 100644 --- a/ompi/mca/io/ompio/io_ompio_file_set_view.c +++ b/ompi/mca/io/ompio/io_ompio_file_set_view.c @@ -38,6 +38,7 @@ static int datatype_duplicate (ompi_datatype_t *oldtype, ompi_datatype_t **newt { ompi_datatype_t *type; if( ompi_datatype_is_predefined(oldtype) ) { + OBJ_RETAIN(oldtype); *newtype = oldtype; return OMPI_SUCCESS; }