]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
Logging lines longer than PIPE_BUF caused an extra empty line to be logged.
authorTimo Sirainen <tss@iki.fi>
Fri, 11 Jun 2010 14:17:31 +0000 (15:17 +0100)
committerTimo Sirainen <tss@iki.fi>
Fri, 11 Jun 2010 14:17:31 +0000 (15:17 +0100)
--HG--
branch : HEAD

src/lib/failures.c

index ffd05b8cdb347bcc91aeb36730fdfbba2b5ef226..0d603c84b94b93b19d73af3f16e4f5a551866191 100644 (file)
@@ -526,11 +526,12 @@ internal_handler(enum log_type log_type, const char *format, va_list args)
                prefix_len = str_len(str);
 
                str_vprintfa(str, format, args);
-               str_append_c(str, '\n');
-               if (str_len(str) <= PIPE_BUF)
+               if (str_len(str)+1 <= PIPE_BUF) {
+                       str_append_c(str, '\n');
                        ret = log_fd_write(2, str_data(str), str_len(str));
-               else
+               } else {
                        ret = internal_send_split(str, prefix_len);
+               }
        } T_END;
 
        if (ret < 0 && failure_ignore_errors)