X-Git-Url: http://git.vanrenterghem.biz/git.ikiwiki.info.git/blobdiff_plain/1ca191b5707ef38af5cbe196e314d57cd5c8c065..0de3074c7f0dbe780919a53a057ee53b31d5e233:/IkiWiki/Plugin/pinger.pm?ds=sidebyside

diff --git a/IkiWiki/Plugin/pinger.pm b/IkiWiki/Plugin/pinger.pm
index 4a8088661..588f7a42a 100644
--- a/IkiWiki/Plugin/pinger.pm
+++ b/IkiWiki/Plugin/pinger.pm
@@ -13,7 +13,7 @@ sub import {
 	hook(type => "needsbuild", id => "pinger", call => \&needsbuild);
 	hook(type => "preprocess", id => "ping", call => \&preprocess);
 	hook(type => "delete", id => "pinger", call => \&ping);
-	hook(type => "change", id => "pinger", call => \&ping);
+	hook(type => "rendered", id => "pinger", call => \&ping);
 }
 
 sub getsetup () {
@@ -45,6 +45,7 @@ sub needsbuild (@) {
 			}
 		}
 	}
+	return $needsbuild;
 }
 
 sub preprocess (@) {
@@ -66,6 +67,8 @@ sub ping {
 	if (! $pinged && %pages) {
 		$pinged=1;
 		
+		eval q{use Net::INET6Glue::INET_is_INET6}; # may not be available
+		
 		my $ua;
 		eval q{use LWPx::ParanoidAgent};
 		if (!$@) {
@@ -105,8 +108,10 @@ sub ping {
 			# only ping when a page was changed, so a ping loop
 			# will still be avoided.
 			next if $url=~/^\Q$config{cgiurl}\E/;
+			my $local_cgiurl = IkiWiki::cgiurl();
+			next if $url=~/^\Q$local_cgiurl\E/;
 			
-			$ua->head($url);
+			$ua->get($url);
 		}
 		
 		exit 0;