Skip Menu |

This queue is for tickets about the Test-Harness CPAN distribution.

Report information
The Basics
Id: 28567
Status: resolved
Worked: 10 min
Priority: 0/
Queue: Test-Harness

People
Owner: andy [...] hexten.net
Requestors: MARKOV [...] cpan.org
nothingmuch [...] woobling.org
Cc:
AdminCc:

Bug Information
Severity: Important
Broken in: 2.64
Fixed in: (no value)



Subject: refs in @INC are stringified and cause shell syntax errors
When running Test::Harness, while @INC has a code reference in it, the code reference gets stringified into CODE(0xdecaf), which generates something like this: • [syeeda:~] nothingmuch % perl -Iblib -ICODE(0xdecaf) -bash: syntax error near unexpected token `(' a proposed fix is to have _filter_INC also make sure that @inc = grep { !ref } @inc; And if you're feeling tidy, to make sure perl is not executed through a shell. If I find more time today I'll try and rummage through the docs and all else, to see if that needs patching too, and then submit something more than whyning. Ciao!
Subject: CODE in @INC
The @INC path can include other things than just directory names: also code references and arrays. Test::Harness:Straps contains if ( $taint || $self->{_is_macos} ) { my @inc = $self->_filtered_INC; push @derived_switches, map { "-I$_" } @inc; } but _filtered_INC does not strip the code/array refs, resulting in sh: -c: line 0: syntax error near unexpected token `(' sh: -c: line 0: `/usr/bin/perl -w -T -ICODE(0x8278238) -I../LibCached/lib etcetera
Fixed in 2.99 r758, thanks.