orte_rml.send_buffer returns the number of bytes sent or a negative value if
something went wrong. A positiv number > 0 is however a correct value (in contrary to orte_rml.recv_buffer, which really returns ORTE_SUCCESS or an error code). Note: this part of the code is correct on 1.1 and 1.2 branch, no need to move this change patch to the release branches. This commit was SVN r11897.
Этот коммит содержится в:
родитель
785a2e1c90
Коммит
ec55acd8f4
@ -9,6 +9,7 @@
|
||||
* University of Stuttgart. All rights reserved.
|
||||
* Copyright (c) 2004-2005 The Regents of the University of California.
|
||||
* All rights reserved.
|
||||
* Copyright (c) 2006 University of Houston. All rights reserved.
|
||||
* $COPYRIGHT$
|
||||
*
|
||||
* Additional copyrights may follow
|
||||
@ -289,13 +290,14 @@ orte_process_name_t *ompi_comm_get_rport (orte_process_name_t *port, int send_fi
|
||||
OBJ_RELEASE(sbuf);
|
||||
return NULL;
|
||||
}
|
||||
if (ORTE_SUCCESS != (rc = orte_rml.send_buffer(port, sbuf, tag, 0))) {
|
||||
ORTE_ERROR_LOG(rc);
|
||||
OBJ_RELEASE(sbuf);
|
||||
return NULL;
|
||||
}
|
||||
OBJ_RELEASE(sbuf);
|
||||
|
||||
rc = orte_rml.send_buffer(port, sbuf, tag, 0);
|
||||
OBJ_RELEASE(sbuf);
|
||||
if ( 0 > rc ) {
|
||||
ORTE_ERROR_LOG(rc);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
rport = port;
|
||||
}
|
||||
else {
|
||||
@ -310,6 +312,7 @@ orte_process_name_t *ompi_comm_get_rport (orte_process_name_t *port, int send_fi
|
||||
OBJ_RELEASE(rbuf);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
num_vals = 1;
|
||||
if (ORTE_SUCCESS != (rc = orte_dss.unpack(rbuf, &tbuf, &num_vals, ORTE_NAME))) {
|
||||
ORTE_ERROR_LOG(rc);
|
||||
|
Загрузка…
x
Ссылка в новой задаче
Block a user