Upgrade to Compress::Zlib 2.000_05
[p5sagit/p5-mst-13.2.git] / ext / Compress / Zlib / examples / gzcat
index 3bbd297..5572bae 100755 (executable)
@@ -1,30 +1,29 @@
 #!/usr/local/bin/perl
 
+use IO::Uncompress::Gunzip qw( $GunzipError );
 use strict ;
 use warnings ;
 
-use Compress::Zlib ;
-
 #die "Usage: gzcat file...\n"
 #    unless @ARGV ;
 
-my $filename ;
+my $file ;
+my $buffer ;
+my $s;
 
 @ARGV = '-' unless @ARGV ;
 
-foreach my $filename (@ARGV) {
-    my $buffer ;
-
-    my $file = $filename ;
-    $file = \*STDIN if $file eq '-' ;
-
-    my $gz = gzopen($file, "rb") 
-         or die "Cannot open $file: $gzerrno\n" ;
+foreach $file (@ARGV) {
+    
+    my $gz = new IO::Uncompress::Gunzip $file
+         or die "Cannot open $file: $GunzipError\n" ;
 
-    print $buffer while $gz->gzread($buffer) > 0 ;
+    print $buffer
+        while ($s = $gz->read($buffer)) > 0 ;
 
-    die "Error reading from $filename: $gzerrno" . ($gzerrno+0) . "\n" 
-        if $gzerrno != Z_STREAM_END ;
+    die "Error reading from $file: $GunzipError\n" 
+        if $s < 0 ;
     
-    $gz->gzclose() ;
+    $gz->close() ;
 }
+