Mercurial > dovecot > core-2.2
changeset 22256:29ae473d0b7c
director: Fix logging last input/output time when there was no input/output
author | Timo Sirainen <timo.sirainen@dovecot.fi> |
---|---|
date | Mon, 19 Jun 2017 12:05:30 +0300 |
parents | a841e797bac2 |
children | 024acbef16ea |
files | src/director/director-connection.c |
diffstat | 1 files changed, 10 insertions(+), 5 deletions(-) [+] |
line wrap: on
line diff
--- a/src/director/director-connection.c Mon Jun 19 12:03:13 2017 +0300 +++ b/src/director/director-connection.c Mon Jun 19 12:05:30 2017 +0300 @@ -166,11 +166,16 @@ int output_msecs = timeval_diff_msecs(&ioloop_timeval, &conn->last_output); int connected_msecs = timeval_diff_msecs(&ioloop_timeval, &conn->connected_time); - str_printfa(str, "bytes in=%"PRIuUOFF_T", bytes out=%"PRIuUOFF_T", " - "last input %u.%03u s ago, last output %u.%03u s ago", - conn->input->v_offset, conn->output->offset, - input_msecs/1000, input_msecs%1000, - output_msecs/1000, output_msecs%1000); + str_printfa(str, "bytes in=%"PRIuUOFF_T", bytes out=%"PRIuUOFF_T, + conn->input->v_offset, conn->output->offset); + if (conn->last_input.tv_sec > 0) { + str_printfa(str, ", last input %u.%03u s ago", + input_msecs/1000, input_msecs%1000); + } + if (conn->last_output.tv_sec > 0) { + str_printfa(str, ", last output %u.%03u s ago", + output_msecs/1000, output_msecs%1000); + } if (conn->connected) { str_printfa(str, ", connected %u.%03u s ago", connected_msecs/1000, connected_msecs%1000);