diff options
Diffstat (limited to 'src/libmime/mime_headers.c')
-rw-r--r-- | src/libmime/mime_headers.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/libmime/mime_headers.c b/src/libmime/mime_headers.c index e0cf42e0a..2b6b2acc0 100644 --- a/src/libmime/mime_headers.c +++ b/src/libmime/mime_headers.c @@ -1028,7 +1028,8 @@ rspamd_message_headers_new(void) void rspamd_message_set_modified_header(struct rspamd_task *task, struct rspamd_mime_headers_table *hdrs, const gchar *hdr_name, - const ucl_object_t *obj) + const ucl_object_t *obj, + struct rspamd_mime_header **order_ptr) { khiter_t k; khash_t(rspamd_mime_headers_htb) *htb = &hdrs->htb; @@ -1048,6 +1049,10 @@ void rspamd_message_set_modified_header(struct rspamd_task *task, k = kh_put(rspamd_mime_headers_htb, htb, hdr_elt->name, &r); kh_value(htb, k) = hdr_elt; + + if (order_ptr) { + DL_APPEND(*order_ptr, hdr_elt); + } } else { hdr_elt = kh_value(htb, k); |