--- a/imager Mon Jul 25 17:16:07 2011 +0200
+++ b/imager Mon Jul 25 17:23:49 2011 +0200
@@ -110,13 +110,14 @@
my ($file, $ext, $cs);
$file = $cs = md5_hex($buffer);
$file =~ s/(?<fn>(?<prefix>...).*)/$+{prefix}\/$+{fn}/g;
+ $ext = ".gz" if $o{compress};
# the extension we do not put into the index
my $log = sprintf "%12d %s %s" => ($.-1), $cs, $file;
if (not (-e "$data/$file" or -e "$data/$file.gz")) {
mkpath dirname("$data/$file.gz");
- my $out = File::Temp->new(TEMPLATE => ".XXXXXXX", DIR => dirname("$data/$file.gz"));
+ my $out = File::Temp->new(TEMPLATE => ".XXXXXXX", DIR => dirname("$data/$file"));
binmode($out);
if ($o{compress}) {
gzip(\$buffer => $out,
@@ -127,7 +128,7 @@
}
else { print {$out} $buffer }
close($out);
- rename($out => "$data/$file.gz");
+ rename($out => "$data/$file$ext");
$log .= " *";
$stats{written}++;
}