X-Git-Url: http://git.rot13.org/?p=BackupPC.git;a=blobdiff_plain;f=bin%2FBackupPC_zcat;h=72ccecbb09529f3d25bedd5c4f420b7f32dfc619;hp=d162e2fe44698dea9ca4e2e5edd32663932a33bf;hb=c615e1bfc6f2b0604a2658996f5dd6b6cfa9469c;hpb=2c14784ad71874ec850d189060fe63d6eb9eba95 diff --git a/bin/BackupPC_zcat b/bin/BackupPC_zcat index d162e2f..72ccecb 100755 --- a/bin/BackupPC_zcat +++ b/bin/BackupPC_zcat @@ -1,4 +1,4 @@ -#!/bin/perl +#!/usr/bin/perl #============================================================= -*-perl-*- # # BackupPC_zcat: uncompress files to stdout @@ -14,7 +14,7 @@ # Craig Barratt # # COPYRIGHT -# Copyright (C) 2001-2003 Craig Barratt +# Copyright (C) 2001-2009 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 @@ -32,7 +32,7 @@ # #======================================================================== # -# Version 2.1.0_CVS, released 8 Feb 2004. +# Version 3.2.0, released 31 Jul 2010. # # See http://backuppc.sourceforge.net. # @@ -48,28 +48,33 @@ use BackupPC::FileZIO; sub zcat { my($fh, $fileName) = @_; - my($data, $r); + my($data, $r, $ret); while ( ($r = $fh->read(\$data, 65536)) > 0 ) { print($data); } if ( $r < 0 ) { print(STDERR "$0: can't uncompress $fileName\n"); + $ret = 1; } $fh->close(); + return $ret; } +my $ret = 0; if ( @ARGV ) { while ( @ARGV ) { if ( defined(my $fh = BackupPC::FileZIO->open($ARGV[0], 0, 1)) ) { - zcat($fh, $ARGV[0]); + $ret ||= zcat($fh, $ARGV[0]); } else { print(STDERR "$0: can't open $ARGV[0]\n"); - exit(1); + $ret = 1; + last; } shift @ARGV; } } else { my $fh = BackupPC::FileZIO->open(*STDIN, 0, 1); - zcat($fh, "stdin"); + $ret ||= zcat($fh, "stdin"); } +exit($ret);