summaryrefslogtreecommitdiffstats
path: root/plugins/mmnormalize/mmnormalize.c
diff options
context:
space:
mode:
authorRainer Gerhards <rgerhards@adiscon.com>2012-11-28 15:12:56 +0100
committerRainer Gerhards <rgerhards@adiscon.com>2012-11-28 15:12:56 +0100
commit60217da3968bcc62048f6afd4c8c77565789c3da (patch)
treef981f7d94b7e8e5d1c132b222762f3f9b738814d /plugins/mmnormalize/mmnormalize.c
parente581c3d26ef7fc954bd271b348663a9e5e735ea5 (diff)
downloadrsyslog-60217da3968bcc62048f6afd4c8c77565789c3da.tar.gz
rsyslog-60217da3968bcc62048f6afd4c8c77565789c3da.tar.bz2
rsyslog-60217da3968bcc62048f6afd4c8c77565789c3da.zip
bugfix: mmnormalize could abort rsyslog if config parameter was in error
Diffstat (limited to 'plugins/mmnormalize/mmnormalize.c')
-rw-r--r--plugins/mmnormalize/mmnormalize.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/plugins/mmnormalize/mmnormalize.c b/plugins/mmnormalize/mmnormalize.c
index 2d42886b..9dbde497 100644
--- a/plugins/mmnormalize/mmnormalize.c
+++ b/plugins/mmnormalize/mmnormalize.c
@@ -249,15 +249,18 @@ setInstParamDefaults(instanceData *pData)
BEGINnewActInst
struct cnfparamvals *pvals;
int i;
+ int bDestructPValsOnExit;
CODESTARTnewActInst
DBGPRINTF("newActInst (mmnormalize)\n");
+ bDestructPValsOnExit = 0;
pvals = nvlstGetParams(lst, &actpblk, NULL);
if(pvals == NULL) {
errmsg.LogError(0, RS_RET_MISSING_CNFPARAMS, "mmnormalize: error reading "
"config parameters");
ABORT_FINALIZE(RS_RET_MISSING_CNFPARAMS);
}
+ bDestructPValsOnExit = 1;
if(Debug) {
dbgprintf("action param blk in mmnormalize:\n");
@@ -284,7 +287,8 @@ CODESTARTnewActInst
iRet = buildInstance(pData);
CODE_STD_FINALIZERnewActInst
- cnfparamvalsDestruct(pvals, &actpblk);
+ if(bDestructPValsOnExit)
+ cnfparamvalsDestruct(pvals, &actpblk);
ENDnewActInst