# Craig Barratt <cbarratt@users.sourceforge.net>
#
# COPYRIGHT
-# Copyright (C) 2004 Craig Barratt
+# Copyright (C) 2004-2007 Craig Barratt
#
# 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
#
#========================================================================
#
-# Version 3.0.0beta2, released 11 Nov 2006.
+# Version 3.1.0, released 25 Nov 2007.
#
# See http://backuppc.sourceforge.net.
#
close(BK_INFO);
}
close(LOCK);
+ #
+ # Default the version field. Prior to 3.0.0 the xferMethod
+ # field is empty, so we use that to figure out the version.
+ #
+ for ( my $i = 0 ; $i < @Backups ; $i++ ) {
+ next if ( $Backups[$i]{version} ne "" );
+ if ( $Backups[$i]{xferMethod} eq "" ) {
+ $Backups[$i]{version} = "2.1.2";
+ } else {
+ $Backups[$i]{version} = "3.0.0";
+ }
+ }
return @Backups;
}
}
%$conf = ( %$conf, %Conf );
}
+
#
# Promote BackupFilesOnly and BackupFilesExclude to hashes
#
while ( <C> ) {
if ( /^\s*\$Conf\{([^}]*)\}\s*=(.*)/ ) {
my $var = $1;
+ $skipExpr = "\$fakeVar = $2\n";
if ( exists($newConf->{$var}) ) {
- $skipExpr = "\$fakeVar = $2\n";
my $d = Data::Dumper->new([$newConf->{$var}], [*value]);
$d->Indent(1);
$d->Terse(1);
} else {
$contents .= $_;
}
- if ( defined($skipExpr) ) {
+ if ( defined($skipExpr)
+ && ($skipExpr =~ /^\$fakeVar = *<</
+ || $skipExpr =~ /;[\n\r]*$/) ) {
#
# if we have a complete expression, then we are done
# skipping text from the original config file.
#
+ $skipExpr = $1 if ( $skipExpr =~ /(.*)/s );
eval($skipExpr);
$skipExpr = undef if ( $@ eq "" );
}