Subject: | [PATCH] PAR 0.89 on Solaris 5.8 |
PAR 0.89 with PAR-Dist 0.07 fails 1 test on Solaris 5.8.
Assuming that the fix in #13470 is applied, "make test" produces the following (Solaris 5.8, Perl 5.8.7, all dependent modules installed)
t/1-basic....Use of uninitialized value in hash element at /home/nc86235/gems-svn/src/contrib/p5-PAR/trunk/src/blib/lib/PAR.pm line 354.
Use of uninitialized value in pattern match (m//) at /home/nc86235/gems-svn/src/contrib/p5-PAR/trunk/src/blib/lib/PAR.pm line 361.
Use of uninitialized value in -f at /home/nc86235/gems-svn/src/contrib/p5-PAR/trunk/src/blib/lib/PAR.pm line 361.
Bizarre copy of HASH in sassign at /home/nc86235/gems-svn/src/contrib/p5-PAR/trunk/src/blib/lib/PAR.pm line 303.
BEGIN failed--compilation aborted.
# Test 1 got: "" (t/1-basic.t at line 8)
# Expected: "Hello, world!\n"
# t/1-basic.t line 8 is: ok(
t/1-basic....FAILED test 1
Failed 1/8 tests, 87.50% okay
t/2-pp.......ok
Failed Test Stat Wstat Total Fail Failed List of Failed
-------------------------------------------------------------------------------
t/1-basic.t 8 1 12.50% 1
Failed 1/2 test scripts, 50.00% okay. 1/42 subtests failed, 97.62% okay.
In other words, the very first test fails, but all the others pass.
The fix is the following patch:
--- src/lib/PAR.pm (revision 12337)
+++ src/lib/PAR.pm (working copy)
@@ -350,6 +350,7 @@
my %escapes;
sub unpar {
my ($par, $file, $member_only, $allow_other_ext) = @_;
+ return if ! defined $par;
my $zip = $LibCache{$par};
my @rv = $par;
With that added, PAR passes all its tests.