diff options
author | Father Chrysostomos <sprout@cpan.org> | 2011-09-16 14:32:20 -0700 |
---|---|---|
committer | Father Chrysostomos <sprout@cpan.org> | 2011-09-16 14:51:16 -0700 |
commit | a3342be368647e67883bc6ba3bea07bb06880b80 (patch) | |
tree | 10cacc539804bc03769913ccea0d1dc6fdb0626d | |
parent | ed40ada772d2558d69ba680968418e95be32f0a8 (diff) | |
download | perl-a3342be368647e67883bc6ba3bea07bb06880b80.tar.gz |
[perl #93638] $ENV{LS_COLORS} causes miniperl glob failure
On some systems, csh croaks if the LS_COLORS envvar contains something
it considers invalid.
The easiest and least intrusive fix for now is to localize %ENV before
running csh, though eventually it might be nice to use File::Glob in
miniperl, either by linking it statically or by inlining it.
-rw-r--r-- | doio.c | 1 | ||||
-rw-r--r-- | pod/perldelta.pod | 7 |
2 files changed, 8 insertions, 0 deletions
@@ -2375,6 +2375,7 @@ Perl_vms_start_glob #endif #endif /* !CSH */ #endif /* !DOSISH */ + save_hash(gv_fetchpvs("ENV", 0, SVt_PVHV)); (void)do_open(PL_last_in_gv, (char*)SvPVX_const(tmpcmd), SvCUR(tmpcmd), FALSE, O_RDONLY, 0, NULL); fp = IoIFP(io); diff --git a/pod/perldelta.pod b/pod/perldelta.pod index 352ae42cb7..37a4d5dd7a 100644 --- a/pod/perldelta.pod +++ b/pod/perldelta.pod @@ -798,6 +798,13 @@ Weakening the first argument to an automatically-invoked C<DESTROY> method could result in erroneous "DESTROY created new reference" errors or crashes. Now it is an error to weaken a read-only reference. +=item * + +Under miniperl (used to configure modules when perl itself is built), +C<glob> now clears %ENV before calling csh, since the latter croaks on some +systems if it does not like the contents of the LS_COLORS enviroment +variable [perl #98662]. + =back =head1 Known Problems |