diff options
author | joey <joey@0fa5a96a-9a0e-0410-b3b2-a0fd24251071> | 2007-05-23 01:44:11 +0000 |
---|---|---|
committer | joey <joey@0fa5a96a-9a0e-0410-b3b2-a0fd24251071> | 2007-05-23 01:44:11 +0000 |
commit | bb0cbecbc377c3966f177b210fcfabe487d0452c (patch) | |
tree | b50f849cd7f6dcf6a5001f03acacc747201eabb4 /IkiWiki/Plugin/img.pm | |
parent | 4550b6258bf759f28a10eeb82d36c659330376c1 (diff) | |
download | ikiwiki-bb0cbecbc377c3966f177b210fcfabe487d0452c.tar ikiwiki-bb0cbecbc377c3966f177b210fcfabe487d0452c.tar.gz |
* Correct bug in the img plugin that caused dependencies on images to not
always be tracked correctly.
Diffstat (limited to 'IkiWiki/Plugin/img.pm')
-rw-r--r-- | IkiWiki/Plugin/img.pm | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/IkiWiki/Plugin/img.pm b/IkiWiki/Plugin/img.pm index 7226231a0..7e167240e 100644 --- a/IkiWiki/Plugin/img.pm +++ b/IkiWiki/Plugin/img.pm @@ -31,9 +31,17 @@ sub preprocess (@) { #{{{ return ''; } - add_depends($params{page}, $image); - my $file = bestlink($params{page}, $image) - || return "[[img ".sprintf(gettext("%s not found"), $image)."]]"; + my $file = bestlink($params{page}, $image); + if (! $file) { + # TODO: this may not be right, depending on where the file is + # created in the end + add_depends($params{page}, $image); + + return "[[img ".sprintf(gettext("%s not found"), $image)."]]"; + } + else { + add_depends($params{page}, $file); + } my $dir = IkiWiki::dirname($file); my $base = IkiWiki::basename($file); @@ -93,6 +101,10 @@ sub preprocess (@) { #{{{ $imgurl="$config{url}/$imglink"; } + if (! defined($im->Get("width")) || ! defined($im->Get("height"))) { + return "[[img ".sprintf(gettext("failed to determine size of image %s"), $file)."]]"; + } + return '<a href="'.$fileurl.'"><img src="'.$imgurl. '" alt="'.$alt.'" width="'.$im->Get("width"). '" height="'.$im->Get("height").'" /></a>'; |