From 34ab4812b5f1664c9e6a27cf5aa38d01bb9bd196 Mon Sep 17 00:00:00 2001 From: David Zuelke Date: Mon, 25 Jun 2012 22:04:54 +0200 Subject: [PATCH] Fix severity, file and line in ErrorExceptions Fix `ErrorHandler` only handing an error message to the constructor of `ErrorException`, but not the severity, file name or line number. --- src/Symfony/Component/HttpKernel/Debug/ErrorHandler.php | 2 +- .../Component/HttpKernel/Tests/Debug/ErrorHandlerTest.php | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/src/Symfony/Component/HttpKernel/Debug/ErrorHandler.php b/src/Symfony/Component/HttpKernel/Debug/ErrorHandler.php index a2466d609f..5ab784dce0 100644 --- a/src/Symfony/Component/HttpKernel/Debug/ErrorHandler.php +++ b/src/Symfony/Component/HttpKernel/Debug/ErrorHandler.php @@ -64,7 +64,7 @@ class ErrorHandler } if (error_reporting() & $level && $this->level & $level) { - throw new \ErrorException(sprintf('%s: %s in %s line %d', isset($this->levels[$level]) ? $this->levels[$level] : $level, $message, $file, $line)); + throw new \ErrorException(sprintf('%s: %s in %s line %d', isset($this->levels[$level]) ? $this->levels[$level] : $level, $message, $file, $line), 0, $level, $file, $line); } return false; diff --git a/src/Symfony/Component/HttpKernel/Tests/Debug/ErrorHandlerTest.php b/src/Symfony/Component/HttpKernel/Tests/Debug/ErrorHandlerTest.php index 585efd46a8..0eb2d79d4c 100644 --- a/src/Symfony/Component/HttpKernel/Tests/Debug/ErrorHandlerTest.php +++ b/src/Symfony/Component/HttpKernel/Tests/Debug/ErrorHandlerTest.php @@ -51,6 +51,9 @@ class ErrorHandlerTest extends \PHPUnit_Framework_TestCase $handler->handle(1, 'foo', 'foo.php', 12, 'foo'); } catch (\ErrorException $e) { $this->assertSame('1: foo in foo.php line 12', $e->getMessage()); + $this->assertSame(1, $e->getSeverity()); + $this->assertSame('foo.php', $e->getFile()); + $this->assertSame(12, $e->getLine()); } restore_error_handler();