From d91e8c31a1e342eb15b0839b9e721730fcad0549 Mon Sep 17 00:00:00 2001 From: Rainer Gerhards Date: Thu, 11 Oct 2012 12:14:55 +0200 Subject: bugfix: some config processing warning messages were treated as errors --- grammar/rainerscript.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'grammar/rainerscript.c') diff --git a/grammar/rainerscript.c b/grammar/rainerscript.c index ad6a32e8..a98277af 100644 --- a/grammar/rainerscript.c +++ b/grammar/rainerscript.c @@ -2186,10 +2186,14 @@ cnfstmtNewAct(struct nvlst *lst) { struct cnfstmt* cnfstmt; char namebuf[256]; + rsRetVal localRet; if((cnfstmt = cnfstmtNew(S_ACT)) == NULL) goto done; - if(actionNewInst(lst, &cnfstmt->d.act) != RS_RET_OK) { - // TODO:RS_RET_WARN? + localRet = actionNewInst(lst, &cnfstmt->d.act); + if(localRet == RS_RET_OK_WARN) { + parser_errmsg("warnings occured in file '%s' around line %d", + cnfcurrfn, yylineno); + } else if(actionNewInst(lst, &cnfstmt->d.act) != RS_RET_OK) { parser_errmsg("errors occured in file '%s' around line %d", cnfcurrfn, yylineno); cnfstmt->nodetype = S_NOP; /* disable action! */ -- cgit v1.2.3 From 9fa59604e94f72225180e5fe28d18c4ec3374d61 Mon Sep 17 00:00:00 2001 From: Rainer Gerhards Date: Thu, 11 Oct 2012 12:22:49 +0200 Subject: bugfixes in regards to action() - bugfix: small memory leak when processing action() statements - bugfix: unknown action() parameters were not reported --- grammar/rainerscript.c | 2 ++ 1 file changed, 2 insertions(+) (limited to 'grammar/rainerscript.c') diff --git a/grammar/rainerscript.c b/grammar/rainerscript.c index a98277af..be568238 100644 --- a/grammar/rainerscript.c +++ b/grammar/rainerscript.c @@ -2203,6 +2203,8 @@ cnfstmtNewAct(struct nvlst *lst) modGetName(cnfstmt->d.act->pMod)); namebuf[255] = '\0'; /* be on safe side */ cnfstmt->printable = (uchar*)strdup(namebuf); + nvlstChkUnused(lst); + nvlstDestruct(lst); done: return cnfstmt; } -- cgit v1.2.3 From 1b7e8bd1a8c33f317de66dafed4db16923ae394b Mon Sep 17 00:00:00 2001 From: Rainer Gerhards Date: Thu, 11 Oct 2012 12:38:17 +0200 Subject: fix regression introduced by last commit action object was created twice, resulting in memleak --- grammar/rainerscript.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'grammar/rainerscript.c') diff --git a/grammar/rainerscript.c b/grammar/rainerscript.c index be568238..9483e116 100644 --- a/grammar/rainerscript.c +++ b/grammar/rainerscript.c @@ -2193,7 +2193,7 @@ cnfstmtNewAct(struct nvlst *lst) if(localRet == RS_RET_OK_WARN) { parser_errmsg("warnings occured in file '%s' around line %d", cnfcurrfn, yylineno); - } else if(actionNewInst(lst, &cnfstmt->d.act) != RS_RET_OK) { + } else if(localRet != RS_RET_OK) { parser_errmsg("errors occured in file '%s' around line %d", cnfcurrfn, yylineno); cnfstmt->nodetype = S_NOP; /* disable action! */ -- cgit v1.2.3