From e23f3eb7d9207463836c8486cd8f6e5cbc1f22fb Mon Sep 17 00:00:00 2001 From: Julian Maurice Date: Fri, 5 Jan 2024 09:04:33 +0100 Subject: [PATCH] Bug 35070: Fix get_enabled_plugins when database is not created yet Koha::Plugins::get_enabled_plugins is called by Koha::Plugins::call which is called by C4::Templates->new, which is used in the web installer when the database is not created yet --- Koha/Plugins.pm | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/Koha/Plugins.pm b/Koha/Plugins.pm index 4bbfc0c2dc9..72ae308f3ff 100644 --- a/Koha/Plugins.pm +++ b/Koha/Plugins.pm @@ -117,9 +117,16 @@ sub get_enabled_plugins { unless ($enabled_plugins) { my $verbose = $params->{verbose} // $class->_verbose; $enabled_plugins = []; - my $rs = Koha::Database->schema->resultset('PluginData'); - $rs = $rs->search({ plugin_key => '__ENABLED__', plugin_value => 1 }); - my @plugin_classes = $rs->get_column('plugin_class')->all(); + + my @plugin_classes; + try { + my $rs = Koha::Database->schema->resultset('PluginData'); + $rs = $rs->search({ plugin_key => '__ENABLED__', plugin_value => 1 }); + @plugin_classes = $rs->get_column('plugin_class')->all(); + } catch { + warn "$_"; + }; + foreach my $plugin_class (@plugin_classes) { next unless can_load( modules => { $plugin_class => undef }, verbose => $verbose, nocache => 1 ); -- 2.30.2