diff --git a/ompi/mca/io/romio314/src/io_romio314_module.c b/ompi/mca/io/romio314/src/io_romio314_module.c index 17de0e125f5..3d7537aec52 100644 --- a/ompi/mca/io/romio314/src/io_romio314_module.c +++ b/ompi/mca/io/romio314/src/io_romio314_module.c @@ -139,6 +139,14 @@ void ADIOI_Datatype_iscontig(MPI_Datatype datatype, int *flag) * In addition, if the data is contiguous but true_lb differes * from zero, ROMIO will ignore the displacement. Thus, lie! */ + + size_t size; + opal_datatype_type_size (&datatype->super, &size); + if ( 0 == size ) { + *flag = 1; + return; + } + *flag = ompi_datatype_is_contiguous_memory_layout(datatype, 2); if (*flag) { MPI_Aint true_extent, true_lb;