1
1

Correctly moves the pointers around on big data.

This commit was SVN r26259.
Этот коммит содержится в:
George Bosilca 2012-04-10 05:37:59 +00:00
родитель f5cd996b91
Коммит c5e4b2ab44

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

@ -285,15 +285,17 @@ ompi_datatype_copy_content_same_ddt( const ompi_datatype_t* type, size_t count,
char* pDestBuf, char* pSrcBuf )
{
int32_t length, rc;
OPAL_PTRDIFF_TYPE extent;
ompi_datatype_type_extent( type, &extent );
while( 0 != count ) {
length = INT_MAX;
if( ((size_t)length) > count ) length = (int32_t)count;
rc = opal_datatype_copy_content_same_ddt( &type->super, length,
pDestBuf, pSrcBuf );
if( 0 != rc ) return rc;
pDestBuf += (ptrdiff_t)length;
pSrcBuf += (ptrdiff_t)length;
pDestBuf += ((ptrdiff_t)length) * extent;
pSrcBuf += ((ptrdiff_t)length) * extent;
count -= (size_t)length;
}
return 0;