From ef74e5508a00c668ba2a43a9df33a7b63ec9b865 Mon Sep 17 00:00:00 2001 From: Jan Maria Matejka Date: Thu, 31 May 2018 11:27:34 +0200 Subject: [PATCH] Filter: Avoid calling interpret() on NULL in IF --- filter/filter.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/filter/filter.c b/filter/filter.c index 745fcf71..fb029437 100644 --- a/filter/filter.c +++ b/filter/filter.c @@ -899,12 +899,14 @@ interpret(struct f_inst *what) break; case FI_CONDITION: ARG(1, T_BOOL); - if (v1.val.i) { + if (v1.val.i && what->a2.p) { ARG_ANY(2); - } else { - ARG_ANY(3); + break; + } + if ((!v1.val.i) && what->a3.p) { + ARG_ANY(3); + break; } - break; case FI_NOP: debug( "No operation\n" ); break;