ph10 2006/10/30 14:59:15 GMT
Modified files:
exim-src/src expand.c
Log:
Previous fix for concatenated headers wasn't backwards compatible for
completely empty headers (they are left out).
Revision Changes Path
1.66 +5 -4 exim/exim-src/src/expand.c
Index: expand.c
===================================================================
RCS file: /home/cvs/exim/exim-src/src/expand.c,v
retrieving revision 1.65
retrieving revision 1.66
diff -u -r1.65 -r1.66
--- expand.c 24 Oct 2006 14:32:49 -0000 1.65
+++ expand.c 30 Oct 2006 14:59:15 -0000 1.66
@@ -1,4 +1,4 @@
-/* $Cambridge: exim/exim-src/src/expand.c,v 1.65 2006/10/24 14:32:49 ph10 Exp $ */
+/* $Cambridge: exim/exim-src/src/expand.c,v 1.66 2006/10/30 14:59:15 ph10 Exp $ */
/*************************************************
* Exim - an Internet mail transport agent *
@@ -1157,11 +1157,12 @@
ptr += ilen;
/* For a non-raw header, put in the comma if needed, then add
- back the newline we removed above. */
+ back the newline we removed above, provided there was some text in
+ the header. */
- if (!want_raw)
+ if (!want_raw && ilen > 0)
{
- if (comma != 0 && ilen > 0) *ptr++ = ',';
+ if (comma != 0) *ptr++ = ',';
*ptr++ = '\n';
}
}
@@ -1197,7 +1198,7 @@
else
{
uschar *decoded, *error;
- if (ptr > yield) ptr--;
+ if (ptr > yield && ptr[-1] == '\n') ptr--;
if (ptr > yield && comma != 0 && ptr[-1] == ',') ptr--;
*ptr = 0;
decoded = rfc2047_decode2(yield, check_rfc2047_length, charset, '?', NULL,