--- zabbix-1.6.6/frontends/php/include/triggers.inc.php.ZBX-1027 2009-08-26 15:16:26.000000000 +0200 +++ zabbix-1.6.6/frontends/php/include/triggers.inc.php 2009-09-29 19:39:26.000000000 +0200 @@ -622,10 +622,12 @@ /* Replace all {server:key.function(param)} and {MACRO} with '$ZBX_TR_EXPR_REPLACE_TO' */ while(ereg(ZBX_EREG_EXPRESSION_TOKEN_FORMAT, $expr, $arr)){ - if($arr[ZBX_EXPRESSION_MACRO_ID] && !isset($ZBX_TR_EXPR_ALLOWED_MACROS[$arr[ZBX_EXPRESSION_MACRO_ID]]) ){ - error('Unknown macro ['.$arr[ZBX_EXPRESSION_MACRO_ID].']'); - return false; - } + if($arr[ZBX_EXPRESSION_MACRO_ID]) { + if (!isset($ZBX_TR_EXPR_ALLOWED_MACROS[$arr[ZBX_EXPRESSION_MACRO_ID]]) ){ + error('Unknown macro ['.$arr[ZBX_EXPRESSION_MACRO_ID].']'); + return false; + } + } else if( !$arr[ZBX_EXPRESSION_MACRO_ID] ) { $host = &$arr[ZBX_EXPRESSION_SIMPLE_EXPRESSION_ID + ZBX_SIMPLE_EXPRESSION_HOST_ID]; $key = &$arr[ZBX_EXPRESSION_SIMPLE_EXPRESSION_ID + ZBX_SIMPLE_EXPRESSION_KEY_ID];