Fix $body_linecount for empty lines
authorJeremy Harris <jgh146exb@wizmail.org>
Sun, 31 Jul 2016 14:46:51 +0000 (15:46 +0100)
committerJeremy Harris <jgh146exb@wizmail.org>
Sun, 31 Jul 2016 15:52:06 +0000 (16:52 +0100)
doc/doc-txt/ChangeLog
src/src/receive.c
test/stderr/0218
test/stderr/0393

index bc48ad2..e1471b6 100644 (file)
@@ -58,6 +58,9 @@ JH/13 Cutthrough: expand transport dkim_domain option when testing for dkim
 JH/14 Fix logging of errors under PIPELINING.  Previously the log line giving
       the relevant preceding SMTP command did not note the pipelining mode.
 
+JH/15 Fix counting of empty lines in $body_linecount and $message_linecount.
+      Previously they were not counted.
+
 
 Exim version 4.87
 -----------------
index 52e041c..a59fbc9 100644 (file)
@@ -682,7 +682,8 @@ while ((ch = (receive_getc)()) != EOF)
     case 1:                         /* After written "\n" */
     if (ch == '.') { ch_state = 3; continue; }
     if (ch == '\r') { ch_state = 2; continue; }
-    if (ch != '\n') ch_state = 0; else linelength = -1;
+    if (ch == '\n') { body_linecount++; linelength = -1; }
+    else ch_state = 0;
     break;
 
     case 2:
index fe4ee2d..f9f1d68 100644 (file)
@@ -93,7 +93,7 @@ Connecting to 127.0.0.1 [127.0.0.1]:1224 ... connected
   SMTP>> QUIT
   SMTP(close)>>
 LOG: MAIN
-  ** a@test.ex F=<CALLER@test.ex> R=client T=send_to_server H=127.0.0.1 [127.0.0.1]: SMTP error from remote mail server after MAIL FROM:<CALLER@test.ex>: 550 NO
+  ** a@test.ex F=<CALLER@test.ex> R=client T=send_to_server H=127.0.0.1 [127.0.0.1]: SMTP error from remote mail server after pipelined MAIL FROM:<CALLER@test.ex>: 550 NO
 Exim version x.yz ....
 configuration file is TESTSUITE/test-config
 trusted user
index 673d9e6..941e8f8 100644 (file)
@@ -27,7 +27,7 @@ lock file created
 mailbox TESTSUITE/test-mail/userx is locked
 writing to file TESTSUITE/test-mail/userx
 writing data block fd=dddd size=sss timeout=0
-process pppp running as transport filter: fd_write=10 fd_read=11
+process pppp running as transport filter: fd_write=9 fd_read=10
 writing data block fd=dddd size=sss timeout=0
 process pppp writing to transport filter
 copying from the filter