Merge pull request #136 from martinbremmer/udpwrite2

Possible assert when ddsi socket write fails.
This commit is contained in:
eboasson 2019-03-26 10:10:22 +01:00 committed by GitHub
commit b9406b2dee
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 4 additions and 4 deletions

View file

@ -160,7 +160,7 @@ static ssize_t ddsi_raweth_conn_write (ddsi_tran_conn_t conn, const nn_locator_t
{
DDS_ERROR("ddsi_raweth_conn_write failed with retcode %d", rc);
}
return ret;
return (rc == DDS_RETCODE_OK ? ret : -1);
}
static ddsrt_socket_t ddsi_raweth_conn_handle (ddsi_tran_base_t base)

View file

@ -530,7 +530,7 @@ static ssize_t ddsi_tcp_conn_write (ddsi_tran_conn_t base, const nn_locator_t *d
char msgbuf[4096]; /* stack buffer for merging smallish writes without requiring allocations */
ddsrt_iovec_t iovec; /* iovec used for msgbuf */
#endif
ssize_t ret;
ssize_t ret = -1;
size_t len;
ddsi_tcp_conn_t conn;
int piecewise;

View file

@ -117,7 +117,7 @@ static void set_msghdr_iov (ddsrt_msghdr_t *mhdr, ddsrt_iovec_t *iov, size_t iov
static ssize_t ddsi_udp_conn_write (ddsi_tran_conn_t conn, const nn_locator_t *dst, size_t niov, const ddsrt_iovec_t *iov, uint32_t flags)
{
dds_retcode_t rc;
ssize_t ret;
ssize_t ret = -1;
unsigned retry = 2;
int sendflags = 0;
ddsrt_msghdr_t msg;
@ -169,7 +169,7 @@ static ssize_t ddsi_udp_conn_write (ddsi_tran_conn_t conn, const nn_locator_t *d
{
DDS_ERROR("ddsi_udp_conn_write failed with retcode %d", rc);
}
return ret;
return (rc == DDS_RETCODE_OK ? ret : -1);
}
static void ddsi_udp_disable_multiplexing (ddsi_tran_conn_t base)