From 8c729c2b12ead68bcf11a3adfa6e465b0fae884f Mon Sep 17 00:00:00 2001 From: Vsevolod Stakhov Date: Wed, 2 Oct 2019 13:08:22 +0100 Subject: [Fix] Do not assert if we have broken mime boundary in the headers --- src/libmime/mime_parser.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'src') diff --git a/src/libmime/mime_parser.c b/src/libmime/mime_parser.c index 1c132335c..517bc4b8d 100644 --- a/src/libmime/mime_parser.c +++ b/src/libmime/mime_parser.c @@ -688,10 +688,11 @@ rspamd_mime_parse_multipart_cb (struct rspamd_task *task, st->pos = cb->part_start; } else { - /* We have seen the start of the boundary */ - if (cb->part_start < pos) { - /* We should have seen some boundary */ - g_assert (cb->cur_boundary != NULL); + /* + * We have seen the start of the boundary, + * but it might be unsuitable (e.g. in broken headers) + */ + if (cb->part_start < pos && cb->cur_boundary) { if ((ret = rspamd_mime_process_multipart_node (task, cb->st, cb->multipart, cb->part_start, pos, TRUE, cb->err)) -- cgit v1.2.3