]> sipb.mit.edu Git - ikiwiki.git/blobdiff - IkiWiki/Plugin/git.pm
add guard against enabling multiple rcs plugins
[ikiwiki.git] / IkiWiki / Plugin / git.pm
index b20793d8694ed093688695701fa7615d424ca725..6f0ac56d5c3b13204c92d0dda1c0dbac417d07d4 100644 (file)
@@ -11,6 +11,9 @@ my $sha1_pattern     = qr/[0-9a-fA-F]{40}/; # pattern to validate Git sha1sums
 my $dummy_commit_msg = 'dummy commit';      # message to skip in recent changes
 
 sub import { #{{{
+       if (exists $IkiWiki::hooks{rcs}) {
+               error(gettext("cannot use multiple rcs plugins"));
+       }
        hook(type => "checkconfig", id => "git", call => \&checkconfig);
        hook(type => "getsetup", id => "git", call => \&getsetup);
        hook(type => "rcs", id => "rcs_update", call => \&rcs_update);
@@ -26,9 +29,6 @@ sub import { #{{{
 } #}}}
 
 sub checkconfig () { #{{{
-       if (! defined $config{diffurl}) {
-               $config{diffurl}="";
-       }
        if (! defined $config{gitorigin_branch}) {
                $config{gitorigin_branch}="origin";
        }
@@ -472,7 +472,7 @@ sub rcs_recentchanges ($) { #{{{
                foreach my $detail (@{ $ci->{'details'} }) {
                        my $file = $detail->{'file'};
 
-                       my $diffurl = $config{'diffurl'};
+                       my $diffurl = defined $config{'diffurl'} ? $config{'diffurl'} : "";
                        $diffurl =~ s/\[\[file\]\]/$file/go;
                        $diffurl =~ s/\[\[sha1_parent\]\]/$ci->{'parent'}/go;
                        $diffurl =~ s/\[\[sha1_from\]\]/$detail->{'sha1_from'}/go;