diff options
Diffstat (limited to 'src/syslog_relay.c')
-rw-r--r-- | src/syslog_relay.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/src/syslog_relay.c b/src/syslog_relay.c index c137297..ec9eca5 100644 --- a/src/syslog_relay.c +++ b/src/syslog_relay.c | |||
@@ -154,16 +154,15 @@ void *syslog_relay_worker(void *arg) | |||
154 | ret = syslog_relay_receive_with_timeout(srwt->client, &c, 1, &bytes, 100); | 154 | ret = syslog_relay_receive_with_timeout(srwt->client, &c, 1, &bytes, 100); |
155 | if (ret == SYSLOG_RELAY_E_TIMEOUT || ret == SYSLOG_RELAY_E_NOT_ENOUGH_DATA || ((bytes == 0) && (ret == SYSLOG_RELAY_E_SUCCESS))) { | 155 | if (ret == SYSLOG_RELAY_E_TIMEOUT || ret == SYSLOG_RELAY_E_NOT_ENOUGH_DATA || ((bytes == 0) && (ret == SYSLOG_RELAY_E_SUCCESS))) { |
156 | continue; | 156 | continue; |
157 | } else if (ret < 0) { | 157 | } |
158 | if (ret < 0) { | ||
158 | debug_info("Connection to syslog relay interrupted"); | 159 | debug_info("Connection to syslog relay interrupted"); |
159 | break; | 160 | break; |
160 | } | 161 | } |
161 | if (srwt->is_raw) { | 162 | if (srwt->is_raw) { |
162 | srwt->cbfunc(c, srwt->user_data); | 163 | srwt->cbfunc(c, srwt->user_data); |
163 | } else { | 164 | } else if (c != 0) { |
164 | if (c != 0) { | 165 | srwt->cbfunc(c, srwt->user_data); |
165 | srwt->cbfunc(c, srwt->user_data); | ||
166 | } | ||
167 | } | 166 | } |
168 | } | 167 | } |
169 | 168 | ||