X-Git-Url: http://git.vanrenterghem.biz/git.ikiwiki.info.git/blobdiff_plain/18d24036477223794e8319428cd7ba971129c29c..0196e1f9fcfebbf904e59c029e494cb2186793e6:/IkiWiki/Plugin/img.pm

diff --git a/IkiWiki/Plugin/img.pm b/IkiWiki/Plugin/img.pm
index 748d28ace..7b89ab673 100644
--- a/IkiWiki/Plugin/img.pm
+++ b/IkiWiki/Plugin/img.pm
@@ -10,9 +10,18 @@ use IkiWiki 2.00;
 my %imgdefaults;
 
 sub import { #{{{
+	hook(type => "getsetup", id => "img", call => \&getsetup);
 	hook(type => "preprocess", id => "img", call => \&preprocess, scan => 1);
 } #}}}
 
+sub getsetup () { #{{{
+	return
+		plugin => {
+			safe => 1,
+			rebuild => undef,
+		},
+} #}}}
+
 sub preprocess (@) { #{{{
 	my ($image) = $_[0] =~ /$config{wiki_file_regexp}/; # untaint
 	my %params=@_;
@@ -56,9 +65,10 @@ sub preprocess (@) { #{{{
 	my $r;
 
 	if ($params{size} ne 'full') {
-		my ($w, $h) = ($params{size} =~ /^(\d+)x(\d+)$/);
+		my ($w, $h) = ($params{size} =~ /^(\d*)x(\d*)$/);
 		error sprintf(gettext('bad size "%s"'), $params{size})
-			unless (defined $w && defined $h);
+			unless (defined $w && defined $h &&
+			        (length $w || length $h));
 
 		my $outfile = "$config{destdir}/$dir/${w}x${h}-$base";
 		$imglink = "$dir/${w}x${h}-$base";