if ($^O eq "MSWin32") { $fh = $_[0]; } #### $fh = Compress::Zlib::gzdopen_ ($fh, $mode, 0) #### if ($^O eq "MSWin32") { $fh = fileno($_[0]); } #### --- Tar.pm Fri Apr 28 00:50:16 2000 +++ blib/lib/Archive/Tar.pm Sat Aug 24 15:06:04 2002 @@ -79,7 +79,7 @@ my $error; sub _drat { - $error = $! . ''; + $error = $! . '' || 'unknown error'; return; } @@ -235,7 +235,7 @@ or goto &_drat; if ($^O eq "MSWin32") { - $fh = $_[0]; + $fh = fileno($_[0]); } else { $fh = fcntl ($_[0], F_DUPFD, 0) @@ -248,7 +248,7 @@ # $fh = Compress::Zlib::gzopen ($_[0], $mode) # or &_drat; $fh = Compress::Zlib::gzdopen_ ($fh, $mode, 0) - or &_drat; + or goto &_drat; } else { $flags = fcntl ($_[0], F_GETFL, 0) & (O_RDONLY | O_WRONLY | O_RDWR);