Index: branches/5.2.x/core/kernel/managers/rewrite_url_processor.php =================================================================== diff -u -N -r16348 -r16483 --- branches/5.2.x/core/kernel/managers/rewrite_url_processor.php (.../rewrite_url_processor.php) (revision 16348) +++ branches/5.2.x/core/kernel/managers/rewrite_url_processor.php (.../rewrite_url_processor.php) (revision 16483) @@ -1,6 +1,6 @@ $listeners[1][1](REWRITE_MODE_PARSE, $prefix, $vars, $url_parts); + $listener_result = call_user_func_array( + $listeners[1], + array(REWRITE_MODE_PARSE, $prefix, &$vars, &$url_parts) + ); + if ($listener_result === false) { // will not proceed to other methods return true; @@ -1083,7 +1087,10 @@ $url_parts = Array (); $listener = $this->rewriteListeners[$prefix][0]; - $ret = $listener[0]->$listener[1](REWRITE_MODE_BUILD, $prefix_special, $params, $url_parts, $pass_events); + $ret = call_user_func_array( + $listener, + array(REWRITE_MODE_BUILD, $prefix_special, &$params, &$url_parts, $pass_events) + ); return $ret; } Index: branches/5.2.x/core/kernel/utility/unit_config_reader.php =================================================================== diff -u -N -r16437 -r16483 --- branches/5.2.x/core/kernel/utility/unit_config_reader.php (.../unit_config_reader.php) (revision 16437) +++ branches/5.2.x/core/kernel/utility/unit_config_reader.php (.../unit_config_reader.php) (revision 16483) @@ -1,6 +1,6 @@ AfterConfigRead(); foreach ($this->configData as $prefix => $config_data) { - $callback_function[0]->$callback_function[1]($prefix, $config_data, $params); + call_user_func_array( + $callback_function, + array($prefix, &$config_data, $params) + ); } }