From 10df15e0ccc5407fc34a902b487cf3d7f167e959 Mon Sep 17 00:00:00 2001 From: Dimitri Sitchet Tomkeu Date: Thu, 13 Feb 2025 15:40:33 +0100 Subject: [PATCH 1/2] fix: contraint whoops a utiliser le code de l'exception comme code HTTP MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ceci est notament utile pour les pages d'erreurs personnalisées une page d'erreur 404 renvoyait systématiquement un code HTTP 500 au lieu de 404 --- src/Debug/ExceptionManager.php | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/Debug/ExceptionManager.php b/src/Debug/ExceptionManager.php index fbc412f2..ba75c5cc 100644 --- a/src/Debug/ExceptionManager.php +++ b/src/Debug/ExceptionManager.php @@ -35,7 +35,12 @@ class ExceptionManager public static function registerHttpErrors(Run $debugger, array $config): Run { return $debugger->pushHandler(static function (Throwable $exception, InspectorInterface $inspector, RunInterface $run) use ($config): int { - if (true === $config['log'] && ! in_array($exception->getCode(), $config['ignore_codes'], true)) { + $exception_code = $exception->getCode(); + if ($exception_code >= 400 && $exception_code < 600) { + $run->sendHttpCode($exception_code); + } + + if (true === $config['log'] && ! in_array($exception->getCode(), $config['ignore_codes'], true)) { service('logger')->error($exception); } From b278aa94f1ef5767a030bc67a5b325f08aa96552 Mon Sep 17 00:00:00 2001 From: dimtrovich <37987162+dimtrovich@users.noreply.github.com> Date: Fri, 21 Feb 2025 10:30:09 +0000 Subject: [PATCH 2/2] Fix styling --- src/Debug/ExceptionManager.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Debug/ExceptionManager.php b/src/Debug/ExceptionManager.php index ba75c5cc..b6bcd076 100644 --- a/src/Debug/ExceptionManager.php +++ b/src/Debug/ExceptionManager.php @@ -40,7 +40,7 @@ public static function registerHttpErrors(Run $debugger, array $config): Run $run->sendHttpCode($exception_code); } - if (true === $config['log'] && ! in_array($exception->getCode(), $config['ignore_codes'], true)) { + if (true === $config['log'] && ! in_array($exception->getCode(), $config['ignore_codes'], true)) { service('logger')->error($exception); }