From: Jan Maria Matejka Date: Thu, 31 May 2018 09:27:34 +0000 (+0200) Subject: Filter: Avoid calling interpret() on NULL in IF X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=ef74e5508a00c668ba2a43a9df33a7b63ec9b865;p=thirdparty%2Fbird.git Filter: Avoid calling interpret() on NULL in IF --- diff --git a/filter/filter.c b/filter/filter.c index 745fcf710..fb0294370 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 { + break; + } + if ((!v1.val.i) && what->a3.p) { ARG_ANY(3); + break; } - break; case FI_NOP: debug( "No operation\n" ); break;