summaryrefslogtreecommitdiffstats
path: root/wtp.c
diff options
context:
space:
mode:
authorRainer Gerhards <rgerhards@adiscon.com>2008-02-27 14:12:26 +0000
committerRainer Gerhards <rgerhards@adiscon.com>2008-02-27 14:12:26 +0000
commit58bb094fbaf6fac3ccd4db802db1cfcb37f3d01c (patch)
tree115f7e47fee80a41054b81dd361e92ad224336cf /wtp.c
parent42f8e09d07e9a384d17a675a20117677600eb0f5 (diff)
downloadrsyslog-58bb094fbaf6fac3ccd4db802db1cfcb37f3d01c.tar.gz
rsyslog-58bb094fbaf6fac3ccd4db802db1cfcb37f3d01c.tar.xz
rsyslog-58bb094fbaf6fac3ccd4db802db1cfcb37f3d01c.zip
bugfix: during queue shutdown, an assert invalidly triggered when the
primary queue's DA worker was terminated while the DA queue's regular worker was still executing. This could result in a segfault during shutdown. tracker: http://bugzilla.adiscon.com/show_bug.cgi?id=41
Diffstat (limited to 'wtp.c')
-rw-r--r--wtp.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/wtp.c b/wtp.c
index 599e63c3..7e920631 100644
--- a/wtp.c
+++ b/wtp.c
@@ -128,6 +128,8 @@ finalize_it:
BEGINobjDestruct(wtp) /* be sure to specify the object type also in END and CODESTART macros! */
int i;
CODESTARTobjDestruct(wtp)
+ wtpProcessThrdChanges(pThis); /* process thread changes one last time */
+
/* destruct workers */
for(i = 0 ; i < pThis->iNumWorkerThreads ; ++i)
wtiDestruct(&pThis->pWrkr[i]);