Index: Slim/Web/Setup.pm =================================================================== --- Slim/Web/Setup.pm (revision 2439) +++ Slim/Web/Setup.pm (working copy) @@ -1247,7 +1247,11 @@ my %plugins = map {$_ => 1} Slim::Utils::Prefs::getArray('disabledplugins'); my $pluginlistref = Slim::Buttons::Plugins::installedPlugins(); - foreach my $plugin (sort {string($pluginlistref->{$a}) cmp string($pluginlistref->{$b})}(keys %{$pluginlistref})) { + for my $plugin (keys %{$pluginlistref}) { + $pluginlistref->{$plugin} = string($pluginlistref->{$plugin}) || $plugin; + } + + foreach my $plugin (sort {$pluginlistref->{$a} cmp $pluginlistref->{$b}} (keys %{$pluginlistref})) { if ((exists $paramref->{"pluginlist$i"} && $paramref->{"pluginlist$i"} == (exists $plugins{$plugin} ? 0 : 1))) { delete $paramref->{"pluginlist$i"}; @@ -1272,8 +1276,12 @@ my $pluginlistref = Slim::Buttons::Plugins::installedPlugins(); + for my $plugin (keys %{$pluginlistref}) { + $pluginlistref->{$plugin} = string($pluginlistref->{$plugin}) || $plugin; + } + no strict 'refs'; - foreach my $plugin (sort {string($pluginlistref->{$a}) cmp string($pluginlistref->{$b})}(keys %{$pluginlistref})) { + foreach my $plugin (sort {$pluginlistref->{$a} cmp $pluginlistref->{$b}} (keys %{$pluginlistref})) { if ($paramref->{"pluginlist$i"} && UNIVERSAL::can("Plugins::$plugin","initPlugin")) { &{"Plugins::" . $plugin . "::initPlugin"};