]> scripts.mit.edu Git - www/ikiwiki.git/blobdiff - IkiWiki/Plugin/mercurial.pm
add guard against enabling multiple rcs plugins
[www/ikiwiki.git] / IkiWiki / Plugin / mercurial.pm
index 738be8c327d017a142af27011c569339806dd520..b05c954dc5565433add20738f8020bd83fe4b8f9 100644 (file)
@@ -8,6 +8,9 @@ use Encode;
 use open qw{:utf8 :std};
 
 sub import { #{{{
+       if (exists $IkiWiki::hooks{rcs}) {
+               error(gettext("cannot use multiple rcs plugins"));
+       }
        hook(type => "checkconfig", id => "mercurial", call => \&checkconfig);
        hook(type => "getsetup", id => "mercurial", call => \&getsetup);
        hook(type => "rcs", id => "rcs_update", call => \&rcs_update);
@@ -23,9 +26,6 @@ sub import { #{{{
 } #}}}
 
 sub checkconfig () { #{{{
-       if (! defined $config{diffurl}) {
-               $config{diffurl}="";
-       }
        if (exists $config{mercurial_wrapper} && length $config{mercurial_wrapper}) {
                push @{$config{wrappers}}, {
                        wrapper => $config{mercurial_wrapper},
@@ -199,7 +199,7 @@ sub rcs_recentchanges ($) { #{{{
                }
 
                foreach my $file (split / /,$info->{files}) {
-                       my $diffurl = $config{'diffurl'};
+                       my $diffurl = defined $config{diffurl} ? $config{'diffurl'} : "";
                        $diffurl =~ s/\[\[file\]\]/$file/go;
                        $diffurl =~ s/\[\[r2\]\]/$info->{changeset}/go;