X-Git-Url: http://git.vanrenterghem.biz/git.ikiwiki.info.git/blobdiff_plain/ffc99f5904934e6e7532bb8cfdebb44ad9ecd913..058e7e451c3291b201d95f95101dabb1b4d2a5f0:/IkiWiki/Plugin/img.pm

diff --git a/IkiWiki/Plugin/img.pm b/IkiWiki/Plugin/img.pm
index 17a9367d3..748d28ace 100644
--- a/IkiWiki/Plugin/img.pm
+++ b/IkiWiki/Plugin/img.pm
@@ -41,6 +41,10 @@ sub preprocess (@) { #{{{
 	}
 
 	my $file = bestlink($params{page}, $image);
+	my $srcfile = srcfile($file, 1);
+	if (! length $file || ! defined $srcfile) {
+		return htmllink($params{page}, $params{destpage}, $image);
+	}
 
 	my $dir = $params{page};
 	my $base = IkiWiki::basename($file);
@@ -61,12 +65,12 @@ sub preprocess (@) { #{{{
 		
 		will_render($params{page}, $imglink);
 
-		if (-e $outfile && (-M srcfile($file) >= -M $outfile)) {
+		if (-e $outfile && (-M $srcfile >= -M $outfile)) {
 			$r = $im->Read($outfile);
 			error sprintf(gettext("failed to read %s: %s"), $outfile, $r) if $r;
 		}
 		else {
-			$r = $im->Read(srcfile($file));
+			$r = $im->Read($srcfile);
 			error sprintf(gettext("failed to read %s: %s"), $file, $r) if $r;
 
 			$r = $im->Resize(geometry => "${w}x${h}");
@@ -83,7 +87,7 @@ sub preprocess (@) { #{{{
 		}
 	}
 	else {
-		$r = $im->Read(srcfile($file));
+		$r = $im->Read($srcfile);
 		error sprintf(gettext("failed to read %s: %s"), $file, $r) if $r;
 		$imglink = $file;
 	}