summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--IkiWiki.pm6
-rw-r--r--debian/changelog1
2 files changed, 6 insertions, 1 deletions
diff --git a/IkiWiki.pm b/IkiWiki.pm
index 81c9a92f4..4e4da11c5 100644
--- a/IkiWiki.pm
+++ b/IkiWiki.pm
@@ -520,7 +520,11 @@ sub loadplugin ($) { #{{{
foreach my $dir (defined $config{libdir} ? possibly_foolish_untaint($config{libdir}) : undef,
"$installdir/lib/ikiwiki") {
if (defined $dir && -x "$dir/plugins/$plugin") {
- require IkiWiki::Plugin::external;
+ eval { require IkiWiki::Plugin::external };
+ if ($@) {
+ my $reason=$@;
+ error(sprintf(gettext("failed to load external plugin needed for %s plugin: %s"), $plugin, $reason));
+ }
import IkiWiki::Plugin::external "$dir/plugins/$plugin";
$loaded_plugins{$plugin}=1;
return 1;
diff --git a/debian/changelog b/debian/changelog
index 423ce12ed..f493eb3c2 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -10,6 +10,7 @@ ikiwiki (2.64) UNRELEASED; urgency=low
external dependency and is not commonly used. If you use otl, make sure
you explicitly enable it now.
* goodstuff: Add more, progress, and table plugins to the bundle.
+ * Improve error message if external plugin fails to load. Closes: #498458
-- Joey Hess <joeyh@debian.org> Mon, 08 Sep 2008 19:21:20 -0400