diff --git a/lib/Twig/Autoloader.php b/lib/Twig/Autoloader.php index d1e005b11..736605d79 100644 --- a/lib/Twig/Autoloader.php +++ b/lib/Twig/Autoloader.php @@ -18,11 +18,17 @@ class Twig_Autoloader { /** * Registers Twig_Autoloader as an SPL autoloader. + * + * @param Bolean $prepend Whether to prepend the autoloader or not. */ - public static function register() + public static function register($prepend = false) { ini_set('unserialize_callback_func', 'spl_autoload_call'); - spl_autoload_register(array(new self, 'autoload')); + if ($prepend && version_compare(phpversion(), '5.3.0RC1', '>=')) { + spl_autoload_register(array(new self, 'autoload'), true, $prepend); + } else { + spl_autoload_register(array(new self, 'autoload'), true); + } } /** diff --git a/test/bootstrap.php b/test/bootstrap.php index 36eb46af6..aecb976f7 100644 --- a/test/bootstrap.php +++ b/test/bootstrap.php @@ -10,4 +10,4 @@ */ require_once dirname(__FILE__).'/../lib/Twig/Autoloader.php'; -Twig_Autoloader::register(); +Twig_Autoloader::register(true);