oops... test both dashes, not just one.
@@ -142,7 +142,7 @@ consume_partial:
end = memchr(end, '\n', (size_t)(stop - end));
} while (end && ++end &&
(size_t)(stop - end) >= (4 + parser->boundary_len) &&
- (end[0] != '-' || end[0] != '-' ||
+ (end[0] != '-' || end[1] != '-' ||
memcmp(end + 2, parser->boundary, parser->boundary_len)));
if (!end) {
end = (char *)stop;
