[mpich2-commits] r5543 - mpich2/trunk/src/mpi/datatype

thakur at mcs.anl.gov thakur at mcs.anl.gov
Thu Oct 22 19:31:37 CDT 2009


Author: thakur
Date: 2009-10-22 19:31:37 -0500 (Thu, 22 Oct 2009)
New Revision: 5543

Modified:
   mpich2/trunk/src/mpi/datatype/type_create_hvector.c
Log:
fixed bug reported by Fab Tillier

Modified: mpich2/trunk/src/mpi/datatype/type_create_hvector.c
===================================================================
--- mpich2/trunk/src/mpi/datatype/type_create_hvector.c	2009-10-23 00:03:44 UTC (rev 5542)
+++ mpich2/trunk/src/mpi/datatype/type_create_hvector.c	2009-10-23 00:31:37 UTC (rev 5543)
@@ -79,8 +79,10 @@
 	    MPIR_ERRTEST_DATATYPE(oldtype, "datatype", mpi_errno);
 	    if (mpi_errno != MPI_SUCCESS) goto fn_fail;
 
-            MPID_Datatype_get_ptr(oldtype, datatype_ptr);
-	    MPID_Datatype_valid_ptr(datatype_ptr, mpi_errno);
+            if (HANDLE_GET_KIND(oldtype) != HANDLE_KIND_BUILTIN) {
+                MPID_Datatype_get_ptr(oldtype, datatype_ptr);
+                MPID_Datatype_valid_ptr(datatype_ptr, mpi_errno);
+            }
             if (mpi_errno != MPI_SUCCESS) goto fn_fail;
 	}
         MPID_END_ERROR_CHECKS;
@@ -102,7 +104,7 @@
     MPID_Datatype_get_ptr(*newtype, new_dtp);
     mpi_errno = MPID_Datatype_set_contents(new_dtp,
 				           MPI_COMBINER_HVECTOR,
-				           3, /* ints (count, blocklength) */
+				           2, /* ints (count, blocklength) */
 				           1, /* aints */
 				           1, /* types */
 				           ints,



More information about the mpich2-commits mailing list