>this seems to work for me. Can you please double-check?
Indeed, it works with the version you sent me. For some reason,
Debian's libraries are different. Here is a diff:
===File /tmp/diff===========================================
tucano:~# for f in /tmp/storeBackup/lib/*; do diff -u $f
/usr/share/storebackup/lib/$(basename $f); done
--- /tmp/storeBackup/lib/checkParam2.pl 2009-08-29 16:24:48.000000000 +0200
+++ /usr/share/storebackup/lib/checkParam2.pl 2009-07-18 20:09:30.000000000
+0200
@@ -427,9 +427,6 @@
{
my $l = shift;
my $errorPart = shift; # where this happens, 'in file at ...'
- my $doNotReplaceEnvVar = shift; # 1 or undef
-
- $doNotReplaceEnvVar = 0 unless defined $doNotReplaceEnvVar;
# masking of special characters
my $dollar = "\001"; # mask for \$
@@ -456,9 +453,7 @@
#print "dQuote = $dQuote\n";
if ($sQuote == -1 and $dQuote == -1) # no quotes
{
- push @l, replaceEnvironmentVars($doNotReplaceEnvVar,
- $errorPart,
- split(/\s+/, $l));
+ push @l, replaceEnvironmentVars(split(/\s+/, $l));
$l = '';
}
elsif ($dQuote == -1 or
@@ -467,9 +462,7 @@
#print "-1- <$l>\n";
if ($l =~ /\A(.*?)\'(.*?)\'(.*)\Z/)
{
- push @l, replaceEnvironmentVars($doNotReplaceEnvVar,
- $errorPart,
- split(/\s+/, $1));
+ push @l, replaceEnvironmentVars(split(/\s+/, $1));
push @l, $2;
$l = $3;
#print "\t<", join('> <', @l), "> + <$l>\n";
@@ -484,11 +477,8 @@
#print "-2- <$l>\n";
if ($l =~ /\A(.*?)\"(.*?)\"(.*)\Z/)
{
- push @l, replaceEnvironmentVars($doNotReplaceEnvVar,
- $errorPart,
- split(/\s+/, $1));
- push @l, replaceEnvironmentVars($doNotReplaceEnvVar,
- $errorPart, $2);
+ push @l, replaceEnvironmentVars(split(/\s+/, $1));
+ push @l, replaceEnvironmentVars($2);
#print "\t<", join('> <', @l), "> + <$l>\n";
$l = $3;
}
@@ -516,9 +506,7 @@
########################################
sub replaceEnvironmentVars
{
- my ($doNotReplaceEnvVar, $errorPart, @lines) = @_;
-
- return (@lines) if $doNotReplaceEnvVar;
+ my (@lines) = @_;
my (@newLines);
my $l;
@@ -546,7 +534,7 @@
}
die "environment variable \$$env not set\n",
- "please set \$$env before calling this program $errorPart"
+ "please set \$$env before calling this program"
unless $ENV{$env};
$l =~ s/\$\{?$env\}?/$ENV{$env}/;
--- /tmp/storeBackup/lib/storeBackupLib.pl 2009-08-29 16:24:48.000000000
+0200
+++ /usr/share/storebackup/lib/storeBackupLib.pl 2009-07-18
20:09:30.000000000 +0200
@@ -2173,12 +2173,12 @@
$val =~ s/\\0A/\n/og; # '\n' wiederherstellen
$val =~ s/\\5C/\\/og; # '\\' wiederherstellen
- my (@val) = # do not replace environment vars
- (@{ConfigFile::splitQuotedLine($val, "at $checkSumFile.info", 1)});
+ my (@val) =
+ (@{ConfigFile::splitQuotedLine($val, "at $checkSumFile.info")});
$metaField{$key} = \...@val;
$meta{$key} = $val[0];
- push @meta, $key; # für die Reihenfolge
+ push @meta, $val[0]; # für die Reihenfolge
}
close(FILE);
unless ($meta{'version'})
============================================================
--
To UNSUBSCRIBE, email to [email protected]
with a subject of "unsubscribe". Trouble? Contact [email protected]