--- rpms/e-smith-backup/sme8/e-smith-backup-2.2.0-workstation-backup-spaces-catalog.patch 2014/01/11 03:22:01 1.1 +++ rpms/e-smith-backup/sme8/e-smith-backup-2.2.0-workstation-backup-spaces-catalog.patch 2014/01/11 23:26:48 1.2 @@ -1,12 +1,27 @@ diff -ruN e-smith-backup-2.2.0.old/root/etc/e-smith/events/actions/workstation-backup-dar e-smith-backup-2.2.0/root/etc/e-smith/events/actions/workstation-backup-dar ---- e-smith-backup-2.2.0.old/root/etc/e-smith/events/actions/workstation-backup-dar 2014-01-10 16:29:05.000000000 -0800 -+++ e-smith-backup-2.2.0/root/etc/e-smith/events/actions/workstation-backup-dar 2014-01-10 18:43:30.000000000 -0800 -@@ -401,7 +401,7 @@ +--- e-smith-backup-2.2.0.old/root/etc/e-smith/events/actions/workstation-backup-dar 2014-01-11 08:59:09.000000000 -0800 ++++ e-smith-backup-2.2.0/root/etc/e-smith/events/actions/workstation-backup-dar 2014-01-11 15:06:56.000000000 -0800 +@@ -401,15 +401,18 @@ my @bknum; my @setd; my @bkname; -open(DAR_LIST, "/usr/bin/dar_manager -Q -B $catalog -l |"); -+open(DAR_LIST, "/usr/bin/dar_manager -Q -B \"$catalog\" -l |"); ++my $pid = open (DAR_LIST, "-|", "/usr/bin/dar_manager", "-Q", "-B", "$catalog", "-l") or ldie ("Cannot start : $!"); while () { - next unless ($_ =~ /set/); +- next unless ($_ =~ /set/); +- chomp; +- ($bknum[$i], $setd[$i], $bkname[$i]) = split(' ', $_, 3); +- $i++; ++ next unless ($_ =~ /set/); ++ chomp; ++ ($bknum[$i], $setd[$i], $bkname[$i]) = split(' ', $_, 3); ++ $i++; + } ++waitpid ($pid, 0); ++$err = WEXITSTATUS($?); + close (DAR_LIST); ++ldie ("Catalog error : $err") if $err; + + # delete from catalog old removed backups +