Skip Menu |
 

This queue is for tickets about the Archive-Zip CPAN distribution.

Report information
The Basics
Id: 47223
Status: resolved
Priority: 0/
Queue: Archive-Zip

People
Owner: Nobody in particular
Requestors: csjewell [...] cpan.org
Cc:
AdminCc:

Bug Information
Severity: Normal
Broken in: 1.28
Fixed in: 1.26



Subject: (heisenbug) ::Archive::extractTree gives ::Member::extractToFileNamed a bad parameter.
Download (untitled) / with headers
text/plain 2.7k
Running "dmake test" on PAR::Dist and two modules that use it (PAR::Repository::Client, Perl::Dist) when Archive::Zip 1.28 is installed fails - in PAR::Dist's case, between tests 6 and 7, with the call stack shown below (I added $Carp::MaxArgLen = 0 to the test file and set PERL5OPT = -MCarp=verbose to get this.) ... mkdir C:\Documents and Settings\Curtis\Desktop\PAR-Dist-0.45\t\C:\: Invalid argument; The filename, directory name, or volume label syntax is incorrect at C:/bootperl/perl/lib/File/Path.pm line 118 File::Path::_mkpath('HASH(0xfbdfac)', 'ARRAY(0xfc2b6c)') called at C:/bootperl/perl/lib/File/Path.pm line 100 File::Path::_mkpath('HASH(0xfbdfac)', 'ARRAY(0xfbec3c)') called at C:/bootperl/perl/lib/File/Path.pm line 100 File::Path::_mkpath('HASH(0xfbdfac)', 'ARRAY(0xfbe9bc)') called at C:/bootperl/perl/lib/File/Path.pm line 100 File::Path::_mkpath('HASH(0xfbdfac)', 'ARRAY(0xfbe73c)') called at C:/bootperl/perl/lib/File/Path.pm line 100 File::Path::_mkpath('HASH(0xfbdfac)', 'ARRAY(0xfbe4bc)') called at C:/bootperl/perl/lib/File/Path.pm line 100 File::Path::_mkpath('HASH(0xfbdfac)', 'ARRAY(0xfbe19c)') called at C:/bootperl/perl/lib/File/Path.pm line 100 File::Path::_mkpath('HASH(0xfbdfac)', 'ARRAY(0xfbbd0c)') called at C:/bootperl/perl/lib/File/Path.pm line 82 File::Path::mkpath('C:\Documents and Settings\Curtis\Desktop\PAR-Dist-0.45\t\C:\DOCUME~1\Curtis\LOCALS~1\Temp\parsjhCo\blib') called at C:/bootperl/perl/site/lib/Archive/Zip/Member.pm line 418 Archive::Zip::Member::extractToFileNamed('Archive::Zip::ZipFileMember=HA SH(0xfb42ac)', 'C:\Documents and Settings\Curtis\Desktop\PAR-Dist-0.45\t\C:\DOCUME~1\Curtis\LOCALS~1\Temp\parsjhCo\blib\META.yml') called at C:/bootperl/perl/site/lib/Archive/Zip/Archive.pm line 677 Archive::Zip::Archive::extractTree('Archive::Zip::Archive=HASH(0xfb3f7c) ', '', 'C:\DOCUME~1\Curtis\LOCALS~1\Temp\parsjhCo\blib/') called at C:\Documents and Settings\Curtis\Desktop\PAR-Dist-0.45\blib\lib/PAR/Dist.pm line 939 PAR::Dist::_unzip('dist', 'C:\Documents and Settings\Curtis\Desktop\PAR-Dist-0.45\t\dist1.par', 'path', 'C:\DOCUME~1\Curtis\LOCALS~1\Temp\parsjhCo\blib') called at C:\Documents and Settings\Curtis\Desktop\PAR-Dist-0.45\blib\lib/PAR/Dist.pm line 1101 PAR::Dist::_unzip_to_tmpdir('dist', 'dist1.par', 'subdir', 'blib') called at C:\Documents and Settings\Curtis\Desktop\PAR-Dist-0.45\blib\lib/PAR/Dist.pm line 657 PAR::Dist::merge_par('dist1.par', 'dist2.par') called at t/03merge_meta.t line 103 # Looks like you planned 29 tests but ran 6. # Looks like your test exited with 22 just after 6. What's really weird is that running the test with "perl -Mblib t\03merge_meta.t" succeeds, and installing 1.26 makes "dmake test" succeed.
Subject: (test case committed) ::Archive::extractTree gives ::Member::extractToFileNamed a bad parameter.
Download (untitled) / with headers
text/plain 307b
A test has been committed that exposes this bug: http://svn.ali.as/cpan/trunk/Archive-Zip/t/12_bug_47223.t @r7660. My suspicion for the cause is the change in Archive::Zip::_asLocalName between 1.26 and 1.28 - but why would it operate differently within the test harness of "dmake test" and outside of it?
Download (untitled) / with headers
text/plain 282b
This bug was caused to fix extractTree running across a fork. It appears to be an attempt to use Cwd::getcwd instead of Cwd::cwd. I've tried to resolve both situations, but as there was no regression test for the fork thing, I've got no idea if this change regresses the other bug.


This service is sponsored and maintained by Best Practical Solutions and runs on Perl.org infrastructure.

Please report any issues with rt.cpan.org to rt-cpan-admin@bestpractical.com.