diff --git a/ChangeLog b/ChangeLog index 7cce9c8c1..0953bd630 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2006-05-2 Richard Frith-Macdonald + + * Source/Additions/GSMime.m: Fix some cases where parse was saying + it needed more data even though it had actually completed. + 2006-05-22 Richard Frith-Macdonald * Source/NSSerializer.m: Fix longstanding deserialisation problem ... diff --git a/Source/Additions/GSMime.m b/Source/Additions/GSMime.m index 0f2f1cf5a..1546c1e1c 100644 --- a/Source/Additions/GSMime.m +++ b/Source/Additions/GSMime.m @@ -2331,7 +2331,7 @@ NSDebugMLLog(@"GSMime", @"Header parsed - %@", info); - (BOOL) _decodeBody: (NSData*)d { unsigned l = [d length]; - BOOL result = NO; + BOOL needsMore = YES; rawBodyLength += l; @@ -2381,7 +2381,7 @@ NSDebugMLLog(@"GSMime", @"Header parsed - %@", info); NSLog(@"Additional data (%*.*s) ignored after parse complete", [d length], [d length], [d bytes]); } - result = YES; /* Nothing more to do */ + needsMore = NO; /* Nothing more to do */ } else if (boundary == nil) { @@ -2395,7 +2395,7 @@ NSDebugMLLog(@"GSMime", @"Header parsed - %@", info); NSLog(@"multipart decode attempt without boundary"); flags.inBody = 0; flags.complete = 1; - result = NO; + needsMore = NO; } else { @@ -2508,8 +2508,8 @@ NSDebugMLLog(@"GSMime", @"Header parsed - %@", info); */ [document setContent: data]; } + needsMore = NO; } - result = YES; } } else @@ -2707,14 +2707,10 @@ NSDebugMLLog(@"GSMime", @"Header parsed - %@", info); { flags.complete = 1; flags.inBody = 0; - result = NO; - } - else - { - result = YES; + needsMore = NO; } } - return result; + return needsMore; } - (BOOL) _unfoldHeader