From b1299ac9108f4568959a2ef61d2f7992ee131c88 Mon Sep 17 00:00:00 2001 From: Vsevolod Stakhov Date: Mon, 22 Jan 2024 19:07:50 +0000 Subject: [PATCH] [Fix] Fix headers insertion in the ordered list --- src/libmime/mime_headers.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/libmime/mime_headers.c b/src/libmime/mime_headers.c index 1cbc57881..2bd559d4f 100644 --- a/src/libmime/mime_headers.c +++ b/src/libmime/mime_headers.c @@ -1,5 +1,5 @@ /* - * Copyright 2023 Vsevolod Stakhov + * Copyright 2024 Vsevolod Stakhov * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -1121,7 +1121,11 @@ void rspamd_message_set_modified_header(struct rspamd_task *task, kh_value(htb, k) = hdr_elt; if (order_ptr) { - DL_APPEND(*order_ptr, hdr_elt); + /* + * This iterates over all headers in O(N), but we have no other options here, as the + * list is already set. + */ + LL_APPEND2(*order_ptr, hdr_elt, ord_next); } } else { -- 2.39.5