[interchange] Fix for image.tag when using makesize and extra parameters
Jon Jensen
interchange-cvs at icdevgroup.org
Fri Mar 18 20:27:49 UTC 2011
commit a1d2dcefef7b292b200981ce8a652661ff4ace19
Author: Josh Lavin <josh at perusion.com>
Date: Tue Mar 15 16:43:15 2011 -0500
Fix for image.tag when using makesize and extra parameters
Example: makesize="200>".
Also quote argument for execution.
code/SystemTag/image.tag | 15 ++++++++-------
1 files changed, 8 insertions(+), 7 deletions(-)
---
diff --git a/code/SystemTag/image.tag b/code/SystemTag/image.tag
index 35c0bc7..7512f88 100644
--- a/code/SystemTag/image.tag
+++ b/code/SystemTag/image.tag
@@ -1,4 +1,4 @@
-# Copyright 2002-2010 Interchange Development Group and others
+# Copyright 2002-2011 Interchange Development Group and others
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -9,7 +9,7 @@ UserTag image Order src
UserTag image AttrAlias geometry makesize
UserTag image AttrAlias resize makesize
UserTag image AddAttr
-UserTag image Version $Revision: 1.24 $
+UserTag image Version 1.25
UserTag image Routine <<EOR
sub {
my ($src, $opt) = @_;
@@ -171,7 +171,8 @@ sub {
last MOGIT;
};
- $dir .= "/$siz";
+ (my $siz_path = $siz) =~ s:[^\dx]::g;
+ $dir .= "/$siz_path";
my $newpath = "$dir/$fn";
if(-f $newpath) {
@@ -179,13 +180,13 @@ sub {
my $mod1 = -M $newpath;
my $mod2 = -M $path;
unless ($mod2 < $mod1) {
- $image =~ s:(/?)([^/]+$):$1$siz/$2:;
+ $image =~ s:(/?)([^/]+$):$1$siz_path/$2:;
$path = $newpath;
last MOGIT;
}
}
else {
- $image =~ s:(/?)([^/]+$):$1$siz/$2:;
+ $image =~ s:(/?)([^/]+$):$1$siz_path/$2:;
$path = $newpath;
last MOGIT;
}
@@ -218,7 +219,7 @@ sub {
}
}
last MOGIT unless $exec;
- system "$exec -geometry $siz '$newpath'";
+ system qq{$exec -geometry "$siz" '$newpath'};
if($?) {
logError("%s: Unable to mogrify image '%s'", 'image tag', $newpath);
last MOGIT;
@@ -228,7 +229,7 @@ sub {
rename $mgkpath, $newpath
or die "Could not overwrite image with new one!";
}
- $image =~ s:(/?)([^/]+$):$1$siz/$2:;
+ $image =~ s:(/?)([^/]+$):$1$siz_path/$2:;
$path = $newpath;
}
}
More information about the interchange-cvs
mailing list