aboutsummaryrefslogtreecommitdiffstats
path: root/src/libmime
diff options
context:
space:
mode:
authorVsevolod Stakhov <vsevolod@highsecure.ru>2022-03-20 12:45:59 +0000
committerVsevolod Stakhov <vsevolod@highsecure.ru>2022-03-20 12:45:59 +0000
commit5a7a082211a952f8ce170d177db848881d994d99 (patch)
tree24ea29bc6e3eb79f0d188b5de2eccad7f41b077c /src/libmime
parent9117058f1548c521567e5314280bd484ba039263 (diff)
downloadrspamd-5a7a082211a952f8ce170d177db848881d994d99.tar.gz
rspamd-5a7a082211a952f8ce170d177db848881d994d99.zip
[Fix] Plug memory leak by using mempool for a copied address
Diffstat (limited to 'src/libmime')
-rw-r--r--src/libmime/received.cxx3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/libmime/received.cxx b/src/libmime/received.cxx
index 0886d6e37..82ec2dac0 100644
--- a/src/libmime/received.cxx
+++ b/src/libmime/received.cxx
@@ -737,7 +737,8 @@ received_maybe_fix_task(struct rspamd_task *task) -> bool
if (mta_name) {
trecv.by_hostname.assign_copy(std::string_view(mta_name));
}
- trecv.addr = rspamd_inet_address_copy(task->from_addr, NULL);
+ trecv.addr = rspamd_inet_address_copy(task->from_addr,
+ task->task_pool);
if (task->hostname) {
trecv.real_hostname.assign_copy(std::string_view(task->hostname));