]> git.vanrenterghem.biz Git - git.ikiwiki.info.git/blobdiff - IkiWiki/Setup.pm
remove WRAPPED_OPTIONS once loaded
[git.ikiwiki.info.git] / IkiWiki / Setup.pm
index d14be879d5f1aab1f432d46bd42f9d824e95c14a..e014a2a10a5e59c1ce4f1285a747e698f390d34f 100644 (file)
@@ -8,9 +8,11 @@ use warnings;
 use strict;
 use IkiWiki;
 use open qw{:utf8 :std};
+use File::Spec;
 
 sub load ($) { # {{{
        my $setup=IkiWiki::possibly_foolish_untaint(shift);
+       $config{setupfile}=File::Spec->rel2abs($config{setup});
        delete $config{setup};
        #translators: The first parameter is a filename, and the second
        #translators: is a (probably not translated) error message.
@@ -72,10 +74,15 @@ sub merge ($) {
 } #}}}
 
 sub getsetup () { #{{{
-       # Gets all available setup data from all plugins. Returns an ordered list of
-       # [plugin, setup] pairs.
+       # Gets all available setup data from all plugins. Returns an
+       # ordered list of [plugin, setup] pairs.
        my @ret;
 
+        # disable logging to syslog while dumping, broken plugins may
+       # whine when loaded
+       my $syslog=$config{syslog};
+        $config{syslog}=undef;
+
        # Load all plugins, so that all setup options are available.
        my @plugins=grep { $_ ne $config{rcs} } sort(IkiWiki::listplugins());
        unshift @plugins, $config{rcs} if $config{rcs}; # rcs plugin 1st
@@ -94,6 +101,8 @@ sub getsetup () { #{{{
                        push @ret, [ $plugin, \@s ],
                }
        }
+       
+        $config{syslog}=$syslog;
 
        return @ret;
 } #}}}