Index: branches/RC/core/kernel/parser/construct_tags.php =================================================================== diff -u -r9286 -r9639 --- branches/RC/core/kernel/parser/construct_tags.php (.../construct_tags.php) (revision 9286) +++ branches/RC/core/kernel/parser/construct_tags.php (.../construct_tags.php) (revision 9639) @@ -66,7 +66,7 @@ $inverse = $this->GetParam('inverse'); if ($prefix !== false) { - $tag = new Tag('', $this->Parser); + $tag =& new Tag('', $this->Parser); $tag->Tag = $function; $tmp = $this->Application->processPrefix($prefix); @@ -219,6 +219,7 @@ } $this->Parser->UsedProcessors = null;*/ + // because of unshift the code is added from bottom to top here, so read from the bottom below: array_unshift($code, '$o = \'\';'); array_unshift($code, '$application->Parser->SetParams($params, false);'); array_unshift($code, '$application =& kApplication::Instance();'); @@ -233,6 +234,7 @@ array_unshift($code, '$params = array_merge_recursive2($defaults, $params);'); array_unshift($code, $defaults); + // ^^^^ read up from here ^^^^ $code[] = 'return $o;'; global $debugger;