From cf80224589ac05402d4f72f5ddf80900ec94d5ad Mon Sep 17 00:00:00 2001 From: Yonel Ceruto Date: Fri, 24 Jan 2020 08:14:13 -0500 Subject: [PATCH] Added debug argument to decide if debug page should be shown or not --- src/Symfony/Component/ErrorHandler/Debug.php | 2 +- src/Symfony/Component/ErrorHandler/ErrorHandler.php | 6 ++++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/src/Symfony/Component/ErrorHandler/Debug.php b/src/Symfony/Component/ErrorHandler/Debug.php index f95334e01a..50d1789f09 100644 --- a/src/Symfony/Component/ErrorHandler/Debug.php +++ b/src/Symfony/Component/ErrorHandler/Debug.php @@ -31,6 +31,6 @@ class Debug DebugClassLoader::enable(); - return ErrorHandler::register(new ErrorHandler(new BufferingLogger())); + return ErrorHandler::register(new ErrorHandler(new BufferingLogger(), true)); } } diff --git a/src/Symfony/Component/ErrorHandler/ErrorHandler.php b/src/Symfony/Component/ErrorHandler/ErrorHandler.php index f4dcfb1094..b44611ec56 100644 --- a/src/Symfony/Component/ErrorHandler/ErrorHandler.php +++ b/src/Symfony/Component/ErrorHandler/ErrorHandler.php @@ -92,6 +92,7 @@ class ErrorHandler private $screamedErrors = 0x55; // E_ERROR + E_CORE_ERROR + E_COMPILE_ERROR + E_PARSE private $loggedErrors = 0; private $traceReflector; + private $debug; private $isRecursive = 0; private $isRoot = false; @@ -180,7 +181,7 @@ class ErrorHandler } } - public function __construct(BufferingLogger $bootstrappingLogger = null) + public function __construct(BufferingLogger $bootstrappingLogger = null, bool $debug = false) { if ($bootstrappingLogger) { $this->bootstrappingLogger = $bootstrappingLogger; @@ -188,6 +189,7 @@ class ErrorHandler } $this->traceReflector = new \ReflectionProperty('Exception', 'trace'); $this->traceReflector->setAccessible(true); + $this->debug = $debug; } /** @@ -697,7 +699,7 @@ class ErrorHandler */ private function renderException(\Throwable $exception): void { - $renderer = \in_array(\PHP_SAPI, ['cli', 'phpdbg'], true) ? new CliErrorRenderer() : new HtmlErrorRenderer(0 !== $this->scopedErrors); + $renderer = \in_array(\PHP_SAPI, ['cli', 'phpdbg'], true) ? new CliErrorRenderer() : new HtmlErrorRenderer($this->debug); $exception = $renderer->render($exception);