From 3cc3d83b7e2c0d8fff387ebdb855076edce1aa77 Mon Sep 17 00:00:00 2001 From: Alexander Bias Date: Mon, 31 Jan 2022 13:02:04 +0100 Subject: [PATCH 1/2] MDL-72292 core: Check if fulldir is set when loading renamed classes --- lib/classes/component.php | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/lib/classes/component.php b/lib/classes/component.php index 8beeadff50a..c011d9e768f 100644 --- a/lib/classes/component.php +++ b/lib/classes/component.php @@ -1206,13 +1206,15 @@ $cache = '.var_export($cache, true).'; * @param string $fulldir */ protected static function load_renamed_classes($fulldir) { - $file = $fulldir . '/db/renamedclasses.php'; - if (is_readable($file)) { - $renamedclasses = null; - require($file); - if (is_array($renamedclasses)) { - foreach ($renamedclasses as $oldclass => $newclass) { - self::$classmaprenames[(string)$oldclass] = (string)$newclass; + if (isset($fulldir)) { + $file = $fulldir . '/db/renamedclasses.php'; + if (is_readable($file)) { + $renamedclasses = null; + require($file); + if (is_array($renamedclasses)) { + foreach ($renamedclasses as $oldclass => $newclass) { + self::$classmaprenames[(string)$oldclass] = (string)$newclass; + } } } } From 3b18f7884fa308272994fb78ac293b4cfeb171b7 Mon Sep 17 00:00:00 2001 From: Simey Lameze Date: Fri, 17 Jun 2022 09:50:38 +0800 Subject: [PATCH 2/2] MDL-72292 core: add param type and polishing --- lib/classes/component.php | 24 +++++++++++++----------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/lib/classes/component.php b/lib/classes/component.php index c011d9e768f..42347a8c90e 100644 --- a/lib/classes/component.php +++ b/lib/classes/component.php @@ -1203,18 +1203,20 @@ $cache = '.var_export($cache, true).'; * and the value is the new class name. * It is only included when we are populating the component cache. After that is not needed. * - * @param string $fulldir + * @param string|null $fulldir The directory to the renamed classes. */ - protected static function load_renamed_classes($fulldir) { - if (isset($fulldir)) { - $file = $fulldir . '/db/renamedclasses.php'; - if (is_readable($file)) { - $renamedclasses = null; - require($file); - if (is_array($renamedclasses)) { - foreach ($renamedclasses as $oldclass => $newclass) { - self::$classmaprenames[(string)$oldclass] = (string)$newclass; - } + protected static function load_renamed_classes(?string $fulldir) { + if (is_null($fulldir)) { + return; + } + + $file = $fulldir . '/db/renamedclasses.php'; + if (is_readable($file)) { + $renamedclasses = null; + require($file); + if (is_array($renamedclasses)) { + foreach ($renamedclasses as $oldclass => $newclass) { + self::$classmaprenames[(string)$oldclass] = (string)$newclass; } } }