Package: igal
Version: 1.4-13
Severity: normal
Tags: patch
It seems the URL escaping was accidentally applied to the slide filename
generation too. Images with space, comma, etc in the filename e.g.
"foo, bar.jpg" will end up with a slide named, on disk, "foo%2C%20bar.html".
This then can't be accessed by the correctly escaped anchor
<a href="foo%2C%20bar.html"> .
The attached patch retains the URL escaping, but fixes the slide
filename generation so that it is the same as the original image.
Nick
-- System Information:
Debian Release: 3.1
APT prefers testing
APT policy: (60, 'testing'), (2, 'unstable')
Architecture: i386 (i686)
Kernel: Linux 2.6.11-1-k7
Locale: LANG=en_GB, LC_CTYPE=en_GB (charmap=ISO-8859-1)
Versions of packages igal depends on:
ii imagemagick 6:6.0.6.2-2.4 Image manipulation programs
ii libimage-size-perl 2.992-1 determine the size of images in se
ii liburi-perl 1.35-1 Manipulates and accesses URI strin
ii perl 5.8.4-8 Larry Wall's Practical Extraction
-- no debconf information
--
http://www.leverton.org/ ... So express yourself
--- /usr/bin/igal 2005-10-24 21:34:10.000000000 +0100
+++ ./igal 2005-10-24 21:46:57.000000000 +0100
@@ -278,7 +278,7 @@
chomp($line); $line =~ s/^\s*//; $line =~ s/\s*$//;
# only read lines with the ---- delimiter that don't
start with #
if (($line =~ m/\w\s*----\s*/) && !($line =~ m/^\#/)) {
- @arr = split(/\s*----\s*/,$line);
+ @arr = split(/\s*----\s*/,$line,2);
# first check image extensions
$temp = $arr[0]; $temp =~ s/^.*\.//;
push(@imgfiles,$arr[0]);
@@ -448,7 +448,7 @@
@slides = ();
if ($opt_n) { # decide on the slide html file
names
for ($i = 0; $i < $nfiles; $i++) {
- $temp = $safenames[$i];
+ $temp = $imgfiles[$i];
$temp =~ s/\..+?$/\.html/;
push(@slides,$temp);
}
@@ -473,7 +473,7 @@
print "Creating individual slides: ";
for ($i = 0; $i < $nfiles; $i++) {
- open(SW,">$opt_d/$slides[$i]") or die "Can't create slide
file\n";
+ open(SW,">","$opt_d/$slides[$i]") or die "Can't create slide
file\n";
print ".";
if ($opt_k) { # use image caption for the HTML slide title
$title = $captions[$i];