1
1

Doh - if we can't output an entire block, then we need to adjust the number of bytes remaining to be output or else we will output duplicate bytes when next we are able to write.

Этот коммит содержится в:
Ralph Castain 2014-11-07 13:12:19 -08:00
родитель 022612c83b
Коммит 8c837d3cb3

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

@ -316,6 +316,8 @@ void orte_iof_base_write_handler(int fd, short event, void *cbdata)
} else if (num_written < output->numbytes) {
/* incomplete write - adjust data to avoid duplicate output */
memmove(output->data, &output->data[num_written], output->numbytes - num_written);
/* adjust the number of bytes remaining to be written */
output->numbytes -= num_written;
/* push this item back on the front of the list */
opal_list_prepend(&wev->outputs, item);
/* if the list is getting too large, abort */