summaryrefslogtreecommitdiffstats
path: root/grammar/rainerscript.c
diff options
context:
space:
mode:
authorRainer Gerhards <rgerhards@adiscon.com>2013-11-05 11:49:32 +0100
committerRainer Gerhards <rgerhards@adiscon.com>2013-11-05 11:49:32 +0100
commitc4f14fa28cc24cc56104b4b89ad380ee0f0470d3 (patch)
treeae55c499426c23bf0a395e1f6dfe8b0a06822b90 /grammar/rainerscript.c
parenta734fe1378c727cb779a0e5e84599aaf6277bbf9 (diff)
parent9052857047f0cb67ef7b2fe1519120bf37ba2648 (diff)
downloadrsyslog-c4f14fa28cc24cc56104b4b89ad380ee0f0470d3.tar.gz
rsyslog-c4f14fa28cc24cc56104b4b89ad380ee0f0470d3.tar.bz2
rsyslog-c4f14fa28cc24cc56104b4b89ad380ee0f0470d3.zip
Merge branch 'master-ruleeng' into master-ruleeng-simd
Conflicts: runtime/ruleset.c required refactoring of (asnyc) call code
Diffstat (limited to 'grammar/rainerscript.c')
-rw-r--r--grammar/rainerscript.c13
1 files changed, 10 insertions, 3 deletions
diff --git a/grammar/rainerscript.c b/grammar/rainerscript.c
index 76b91940..0c695934 100644
--- a/grammar/rainerscript.c
+++ b/grammar/rainerscript.c
@@ -2423,7 +2423,8 @@ cnfstmtPrintOnly(struct cnfstmt *stmt, int indent, sbool subtree)
break;
case S_CALL:
cstr = es_str2cstr(stmt->d.s_call.name, NULL);
- doIndent(indent); dbgprintf("CALL [%s]\n", cstr);
+ doIndent(indent); dbgprintf("CALL [%s, queue:%d]\n", cstr,
+ stmt->d.s_call.ruleset == NULL ? 0 : 1);
free(cstr);
break;
case S_ACT:
@@ -3254,8 +3255,14 @@ cnfstmtOptimizeCall(struct cnfstmt *stmt)
stmt->nodetype = S_NOP;
goto done;
}
- DBGPRINTF("CALL obtained ruleset ptr %p for ruleset %s\n", pRuleset, rsName);
- stmt->d.s_call.stmt = pRuleset->root;
+ DBGPRINTF("CALL obtained ruleset ptr %p for ruleset %s [hasQueue:%d]\n",
+ pRuleset, rsName, rulesetHasQueue(pRuleset));
+ if(rulesetHasQueue(pRuleset)) {
+ stmt->d.s_call.ruleset = pRuleset;
+ } else {
+ stmt->d.s_call.ruleset = NULL;
+ stmt->d.s_call.stmt = pRuleset->root;
+ }
done:
free(rsName);
return;