X-Git-Url: http://git.vanrenterghem.biz/git.ikiwiki.info.git/blobdiff_plain/e1d9747be167c834c5b1b98331f40dc98fc46c93..0d1593a201f8492b6aea74e74d6b163c1ec70c3f:/IkiWiki/Plugin/editdiff.pm?ds=inline

diff --git a/IkiWiki/Plugin/editdiff.pm b/IkiWiki/Plugin/editdiff.pm
index b8ecaa3d7..f5d7837fc 100644
--- a/IkiWiki/Plugin/editdiff.pm
+++ b/IkiWiki/Plugin/editdiff.pm
@@ -9,10 +9,19 @@ use HTML::Entities;
 use IPC::Open2;
 
 sub import { #{{{
+	hook(type => "getsetup", id => "editdiff", call => \&getsetup);
 	hook(type => "formbuilder_setup", id => "editdiff",
 		call => \&formbuilder_setup);
 } #}}}
 
+sub getsetup () { #{{{
+	return
+		plugin => {
+			safe => 1,
+			rebuild => 0,
+		},
+} #}}}
+
 sub diff ($$) { #{{{
 	my $orig=shift;
 	my $content=shift;
@@ -46,11 +55,11 @@ sub diff ($$) { #{{{
 sub formbuilder_setup { #{{{
 	my %params=@_;
 	my $form=$params{form};
-	my $page=$form->field("page");
 
-	return if $form->field("do") ne "edit";
+	return if ! defined $form->field("do") || $form->field("do") ne "edit";
 
-	$page = IkiWiki::titlepage(IkiWiki::possibly_foolish_untaint($page));
+	my $page=$form->field("page");
+	$page = IkiWiki::possibly_foolish_untaint($page);
 	return unless exists $pagesources{$page};
 
 	push @{$params{buttons}}, "Diff";