Adjusted backtrace call to reduce memory usage
authorRay <ray@discountofficeitems.com>
Fri, 10 May 2013 17:08:06 +0000 (12:08 -0500)
committerFabien Potencier <fabien.potencier@gmail.com>
Tue, 14 May 2013 05:05:22 +0000 (07:05 +0200)
lib/Twig/Error.php

index e77ec98..72d91a9 100644 (file)
@@ -186,7 +186,14 @@ class Twig_Error extends Exception
     protected function guessTemplateInfo()
     {
         $template = null;
-        foreach (debug_backtrace() as $trace) {
+
+        if (version_compare(phpversion(), '5.3.6', '>=')) {
+            $backtrace = debug_backtrace(DEBUG_BACKTRACE_IGNORE_ARGS | DEBUG_BACKTRACE_PROVIDE_OBJECT);
+        } else {
+            $backtrace = debug_backtrace();
+        }
+
+        foreach ($backtrace as $trace) {
             if (isset($trace['object']) && $trace['object'] instanceof Twig_Template && 'Twig_Template' !== get_class($trace['object'])) {
                 if (null === $this->filename || $this->filename == $trace['object']->getTemplateName()) {
                     $template = $trace['object'];