1
1

Make sure the partial_length has the expected value.

This commit was SVN r10346.
Этот коммит содержится в:
George Bosilca 2006-06-14 03:17:32 +00:00
родитель 428d81bc78
Коммит 24099edb38
2 изменённых файлов: 3 добавлений и 5 удалений

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

@ -310,6 +310,7 @@ int ompi_convertor_create_stack_with_pos_contig( ompi_convertor_t* pConvertor,
pConvertor->bConverted = starting_point;
pConvertor->stack_pos = 1;
assert( 0 == pConvertor->partial_length );
return OMPI_SUCCESS;
}

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

@ -146,6 +146,7 @@ int ompi_convertor_generic_simple_position( ompi_convertor_t* pConvertor,
if( --(pStack->count) == 0 ) { /* end of loop */
if( pConvertor->stack_pos == 0 ) {
pConvertor->flags |= CONVERTOR_COMPLETED;
pConvertor->partial_length = 0;
goto complete_loop; /* completed */
}
pConvertor->stack_pos--;
@ -191,6 +192,7 @@ int ompi_convertor_generic_simple_position( ompi_convertor_t* pConvertor,
base_pointer, iov_len_local );
if( 0 != count_desc ) { /* completed */
type = pElem->elem.common.type;
pConvertor->partial_length = iov_len_local;
goto complete_loop;
}
base_pointer = pConvertor->pBaseBuf + pStack->disp;
@ -199,11 +201,6 @@ int ompi_convertor_generic_simple_position( ompi_convertor_t* pConvertor,
}
}
complete_loop:
if( 0 != pConvertor->partial_length )
assert( iov_len_local == pConvertor->partial_length );
pConvertor->partial_length = iov_len_local;
(*position) -= iov_len_local;
pConvertor->bConverted = *position; /* update the already converted bytes */
if( !(pConvertor->flags & CONVERTOR_COMPLETED) ) {