X-Git-Url: https://code.citadel.org/?a=blobdiff_plain;f=citadel%2Finternet_addressing.c;h=83fcf4c04eca5a7e3c8433799ef7c84444db2d92;hb=2c6526414a4a97a2d0953b2b29f3e667a20d574d;hp=907d0eaac61719709fed8f5a7fcfbd00637d4bb0;hpb=3be735375261de85bd278cd4532ca60ecda374f5;p=citadel.git diff --git a/citadel/internet_addressing.c b/citadel/internet_addressing.c index 907d0eaac..83fcf4c04 100644 --- a/citadel/internet_addressing.c +++ b/citadel/internet_addressing.c @@ -991,15 +991,14 @@ void unfold_rfc822_field(char **field, char **FieldEnd) { if ((*sField=='\r') || (*sField=='\n')) { - int offset = 1; - - if (*(sField+1) == '\n') - offset++; - - if (sField + offset == pFieldEnd) - break; - - *pField = *sField + offset; + int Offset = 1; + while (((*(sField + Offset) == '\r') || + (*(sField + Offset) == '\n') || + (isspace(*(sField + Offset)))) && + (sField + Offset < pFieldEnd)) + Offset ++; + sField += Offset; + *pField = *sField; } else { if (*sField=='\"') quote = 1 - quote;