summaryrefslogtreecommitdiffstats
path: root/grammar
diff options
context:
space:
mode:
authorRainer Gerhards <rgerhards@adiscon.com>2013-10-29 09:37:50 +0100
committerRainer Gerhards <rgerhards@adiscon.com>2013-10-29 09:37:50 +0100
commitffa4f08b98d6a8b820b082e4504a4ede495675ca (patch)
tree07c0ae9ed8cae5700d52567f8005947a3fb9eaf0 /grammar
parenta5f5648f75d01aaea3ec8c07c55d80ad86579ed2 (diff)
parentf11d853d89716a9bf29afd16841a149516ca2ef3 (diff)
downloadrsyslog-ffa4f08b98d6a8b820b082e4504a4ede495675ca.tar.gz
rsyslog-ffa4f08b98d6a8b820b082e4504a4ede495675ca.tar.bz2
rsyslog-ffa4f08b98d6a8b820b082e4504a4ede495675ca.zip
Merge branch 'v7-stable'
Diffstat (limited to 'grammar')
-rw-r--r--grammar/rainerscript.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/grammar/rainerscript.c b/grammar/rainerscript.c
index a2bed2bf..a4cf90bd 100644
--- a/grammar/rainerscript.c
+++ b/grammar/rainerscript.c
@@ -3055,12 +3055,15 @@ cnfexprOptimize(struct cnfexpr *expr)
expr->r = exprswap;
}
}
- if(expr->l->nodetype == 'V') {
- expr = cnfexprOptimize_CMP_var(expr);
- }
if(expr->r->nodetype == 'A') {
cnfexprOptimize_CMPEQ_arr((struct cnfarray *)expr->r);
}
+ /* This should be evaluated last because it may change expr
+ * to a function.
+ */
+ if(expr->l->nodetype == 'V') {
+ expr = cnfexprOptimize_CMP_var(expr);
+ }
break;
case CMP_LE:
case CMP_GE: