return if grep { $_ eq $plugin} @{$config{disable_plugins}};
- foreach my $dir (possibly_foolish_untaint($config{libdir}),
+ 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;
} #}}}
sub unlockwiki () { #{{{
- return close($wikilock);
+ return close($wikilock) if $wikilock;
+ return;
} #}}}
my $commitlock;
} #}}}
sub enable_commit_hook () { #{{{
- return close($commitlock);
+ return close($commitlock) if $commitlock;
+ return;
} #}}}
sub loadindex () { #{{{
sub gettext { #{{{
# Only use gettext in the rare cases it's needed.
- if (exists $ENV{LANG} || exists $ENV{LC_ALL} || exists $ENV{LC_MESSAGES}) {
+ if ((exists $ENV{LANG} && length $ENV{LANG}) ||
+ (exists $ENV{LC_ALL} && length $ENV{LC_ALL}) ||
+ (exists $ENV{LC_MESSAGES} && length $ENV{LC_MESSAGES})) {
if (! $gettext_obj) {
$gettext_obj=eval q{
use Locale::gettext q{textdomain};