From 570405db758892b21c1b4a019f6a5394645183c5 Mon Sep 17 00:00:00 2001 From: Petr Skoda Date: Wed, 21 Jun 2023 15:45:45 +0200 Subject: [PATCH] MDL-78541 admin: ignore headings in admin_apply_default_settings() This is a workaround for plugins that do not have unique setting names. --- lib/adminlib.php | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/lib/adminlib.php b/lib/adminlib.php index 3e4b653d1a4..a3f73ea4a54 100644 --- a/lib/adminlib.php +++ b/lib/adminlib.php @@ -8798,6 +8798,10 @@ function admin_apply_default_settings($node=null, $unconditional=true, $admindef } else if ($node instanceof admin_settingpage) { foreach ($node->settings as $setting) { + if ($setting->nosave) { + // Not a real setting, must be a heading or description. + continue; + } if (!$unconditional && !is_null($setting->get_setting())) { // Do not override existing defaults. continue;