[Slim-Checkins] r11036 - /trunk/server/Slim/bootstrap.pm
adrian at svn.slimdevices.com
adrian at svn.slimdevices.com
Sat Dec 23 12:30:16 PST 2006
Author: adrian
Date: Sat Dec 23 12:30:16 2006
New Revision: 11036
URL: http://svn.slimdevices.com?rev=11036&view=rev
Log:
Bug: N/A
Description: after startup warn on failure to load any module
Modified:
trunk/server/Slim/bootstrap.pm
Modified: trunk/server/Slim/bootstrap.pm
URL: http://svn.slimdevices.com/trunk/server/Slim/bootstrap.pm?rev=11036&r1=11035&r2=11036&view=diff
==============================================================================
--- trunk/server/Slim/bootstrap.pm (original)
+++ trunk/server/Slim/bootstrap.pm Sat Dec 23 12:30:16 2006
@@ -132,8 +132,8 @@
# Try and load the modules - some will fail if we don't include the
# binaries for that version/architecture combo
- my @required_failed = tryModuleLoad(@$required_modules);
- my @optional_failed = tryModuleLoad(@$optional_modules);
+ my @required_failed = tryModuleLoad(@$required_modules, 'nowarn');
+ my @optional_failed = tryModuleLoad(@$optional_modules, 'nowarn');
if ($d_startup) {
print "The following modules are loaded after the first attempt:\n";
@@ -152,8 +152,8 @@
# Remove our paths so we can try loading the failed modules from the default system @INC
splice(@INC, 0, scalar @SlimINC);
- my @required_really_failed = tryModuleLoad(@required_failed);
- my @optional_really_failed = tryModuleLoad(@optional_failed);
+ my @required_really_failed = tryModuleLoad(@required_failed, 'nowarn');
+ my @optional_really_failed = tryModuleLoad(@optional_failed, 'nowarn');
if ($d_startup) {
print "The following modules are loaded after the second attempt:\n";
@@ -217,6 +217,9 @@
sub tryModuleLoad {
my @modules = @_;
+ # if called from loadModules don't warn for modules which fail to load
+ my $warnOnFail = (@modules && $modules[$#modules] eq 'nowarn' && pop @modules) ? 0 : 1;
+
my @failed = ();
my (%oldINC, @newModules);
@@ -240,9 +243,9 @@
if ($@) {
- if ($d_startup || $module =~ /^Slim::Display::/ || ($::d_plugins && $module =~ /^Plugins::/)) {
-
- warn "Module [$module] failed to load: [$@]\n";
+ if ($d_startup || $warnOnFail) {
+
+ print STDERR "Module [$module] failed to load:\n$@\n";
}
# NB: More FC5 / SELinux - in case the above chcon doesn't work.
More information about the checkins
mailing list