summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRainer Gerhards <rgerhards@adiscon.com>2013-11-18 15:09:10 +0100
committerRainer Gerhards <rgerhards@adiscon.com>2013-11-18 15:09:10 +0100
commit82e77cd4520dde2faa6b1ee29d9853c492a5fc15 (patch)
treea06830256bbdf103a7e32bda24d30133eef4c1ee
parentb6b2366faa82c8369f69fdc0be37ab780dd4b6d7 (diff)
downloadrsyslog-82e77cd4520dde2faa6b1ee29d9853c492a5fc15.tar.gz
rsyslog-82e77cd4520dde2faa6b1ee29d9853c492a5fc15.tar.bz2
rsyslog-82e77cd4520dde2faa6b1ee29d9853c492a5fc15.zip
bugfix: memory leak on worker thread termination
-rw-r--r--ChangeLog1
-rw-r--r--runtime/wti.c4
2 files changed, 5 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 0538d657..8bbe5d8d 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,6 @@
---------------------------------------------------------------------------
Version 8.1.1 [devel] 2013-11-??
+- bugfix: memory leak on worker thread termination
- bugfix: potential segfault in omfile under heavy load
Thanks to Pavel Levshin for alerting us.
- bugfix: mmsequence: instance mode did not work
diff --git a/runtime/wti.c b/runtime/wti.c
index a9154670..bbefc537 100644
--- a/runtime/wti.c
+++ b/runtime/wti.c
@@ -355,7 +355,11 @@ dbgprintf("DDDD: wti %p: worker starting\n", pThis);
if(pThis->actWrkrInfo[i].actWrkrData != NULL) {
dbgprintf("DDDD: calling freeWrkrData!\n");
pThis->actWrkrInfo[i].pAction->pMod->mod.om.freeWrkrInstance(pThis->actWrkrInfo[i].actWrkrData);
+ free(pThis->actWrkrInfo[i].iparams);
pThis->actWrkrInfo[i].actWrkrData = NULL; /* re-init for next activation */
+ pThis->actWrkrInfo[i].iparams = NULL;
+ pThis->actWrkrInfo[i].currIParam = 0;
+ pThis->actWrkrInfo[i].maxIParams = 0;
}
}