From 4e5968ee15436e2b3b6f8247f7a0633bbb149e68 Mon Sep 17 00:00:00 2001 From: Markus Makela Date: Tue, 18 Aug 2015 13:12:59 +0300 Subject: [PATCH] Reverted changed which add a return value to dcb_log_write_failure --- server/core/dcb.c | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/server/core/dcb.c b/server/core/dcb.c index 889178fd5..e3b08c202 100644 --- a/server/core/dcb.c +++ b/server/core/dcb.c @@ -106,7 +106,7 @@ static inline bool dcb_write_parameter_check(DCB *dcb, GWBUF *queue); static inline void dcb_write_fake_code(DCB *dcb); #endif static inline void dcb_write_when_already_queued(DCB *dcb, GWBUF *queue); -static int dcb_log_write_failure(DCB *dcb, GWBUF *queue, int eno); +static void dcb_log_write_failure(DCB *dcb, GWBUF *queue, int eno); static inline void dcb_write_tidy_up(DCB *dcb, bool below_water); static int dcb_write_SSL_error_report (DCB *dcb, int ret); @@ -1147,7 +1147,8 @@ int below_water; if (written < 0) { - int rv = dcb_log_write_failure(dcb, queue, errno); + int saved_errno = errno; + dcb_log_write_failure(dcb, queue, saved_errno); /*< * What wasn't successfully written is stored to write queue @@ -1161,7 +1162,12 @@ int below_water; /** Return 1 if the write failure was due to EWOULDBLOCK or EAGAIN. The rest of the buffer will be written once an EPOLL_OUT event arrives.*/ - return rv == 0 ? 1 : 0; + if (saved_errno == 0 || + saved_errno == EAGAIN || + saved_errno == EWOULDBLOCK) + return 1; + else + return 0; } /* * Pull the number of bytes we have written from @@ -1311,10 +1317,9 @@ dcb_write_when_already_queued(DCB *dcb, GWBUF *queue) * @param queue Queue of buffers to write * @param eno Error number for logging */ -static int +static void dcb_log_write_failure(DCB *dcb, GWBUF *queue, int eno) { - int rval = 0; if (LOG_IS_ENABLED(LOGFILE_DEBUG)) { if (eno == EPIPE) @@ -1330,7 +1335,6 @@ dcb_log_write_failure(DCB *dcb, GWBUF *queue, int eno) dcb->fd, eno, strerror(eno)))); - rval = -1; } } @@ -1350,7 +1354,6 @@ dcb_log_write_failure(DCB *dcb, GWBUF *queue, int eno) dcb->fd, eno, strerror(eno)))); - rval = -1; } @@ -1383,10 +1386,8 @@ dcb_log_write_failure(DCB *dcb, GWBUF *queue, int eno) dcb_isclient(dcb) ? "client" : "backend server", eno, strerror(eno)))); - rval = -1; } } - return rval; } /**