author | zautrix <zautrix> | 2005-02-11 17:11:53 (UTC) |
---|---|---|
committer | zautrix <zautrix> | 2005-02-11 17:11:53 (UTC) |
commit | d45d293d045a8d0f68e09ff9414e2dd6d18dd651 (patch) (side-by-side diff) | |
tree | 9ea69affac4d35e8cb96074237702fb0b75e63ce /kmicromail/libetpan/tools | |
parent | 28b0fff54d5e3ddf59e922cae06285c3bdbbf1de (diff) | |
download | kdepimpi-d45d293d045a8d0f68e09ff9414e2dd6d18dd651.zip kdepimpi-d45d293d045a8d0f68e09ff9414e2dd6d18dd651.tar.gz kdepimpi-d45d293d045a8d0f68e09ff9414e2dd6d18dd651.tar.bz2 |
fixi
-rw-r--r-- | kmicromail/libetpan/tools/mailstream_helper.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/kmicromail/libetpan/tools/mailstream_helper.c b/kmicromail/libetpan/tools/mailstream_helper.c index 146f955..92f4ffe 100644 --- a/kmicromail/libetpan/tools/mailstream_helper.c +++ b/kmicromail/libetpan/tools/mailstream_helper.c @@ -89,26 +89,33 @@ char * mailstream_read_line_append(mailstream * stream, MMAPString * line) } if (mailstream_read_len_append(stream, line, stream->read_buffer_len) == NULL) return NULL; } else { ssize_t r; r = mailstream_feed_read_buffer(stream); if (r == -1) return NULL; - if (r == 0) - break; + if (r == 0) { + // LR + // this avoids a memory access violation later when trying + // to remove_trailing_eol from a null string + if ( line->len == 0 ) + return NULL; + else + break; + } } } while (1); return line->str; } char * mailstream_read_line_remove_eol(mailstream * stream, MMAPString * line) { if (!mailstream_read_line(stream, line)) return NULL; |