From ba81cdabce0c263e5834181fa00faa566d633e74 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Maur=C3=ADcio=20Meneghini=20Fauth?= Date: Mon, 21 Nov 2022 15:57:03 -0300 Subject: [PATCH] Catch exceptions/errors in the config file MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fixes https://github.com/phpmyadmin/phpmyadmin/issues/17911 Signed-off-by: MaurĂ­cio Meneghini Fauth --- libraries/classes/Config.php | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/libraries/classes/Config.php b/libraries/classes/Config.php index c7f3c4f734..a0d6edafc3 100644 --- a/libraries/classes/Config.php +++ b/libraries/classes/Config.php @@ -5,6 +5,7 @@ declare(strict_types=1); namespace PhpMyAdmin; use PhpMyAdmin\Config\Settings; +use Throwable; use function __; use function array_filter; @@ -370,8 +371,13 @@ class Config ob_start(); $isConfigLoading = true; - /** @psalm-suppress UnresolvableInclude */ - $eval_result = include $this->getSource(); + try { + /** @psalm-suppress UnresolvableInclude */ + $eval_result = include $this->getSource(); + } catch (Throwable $exception) { + $eval_result = false; + } + $isConfigLoading = false; ob_end_clean();