New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
BUG require filename on windows broken #6166
Comments
From kane@ns1.biocede.comI found the following bug when using require: use File::Spec; now, the entry in %INC will be: usually, that's not so bad, as it merely means that GetOpt::Long would be require GetOpt::Long; ie, %INC would hold: But, when you do this with IPC::Run (where one of the submodules goes and Since ActiveState didn't provide me with a debugging perl, i can't give -jos =========================================================================== T:\tools>perl -V Characteristics of this binary (from libperl): |
From @chipdudeJos recently recruited my help in solving the given problem. require Foo::Bar; loads and evaluates Foo/Bar.pm twice -- once as "Foo/Bar.pm" and once Normally, the slash/backslash confusion of Win32 paths is a user The below patch canonicalizes the name of required files to only use Share & Enjoy! ==== //depot/perl/pp_ctl.c#331 - /u/src/perl/current/pp_ctl.c ==== -- |
From @gsarOn Tue, 24 Dec 2002 13:09:33 EST, Chip Salzenberg wrote:
Thanks! Given that this is the uncommon case, it would be nice to There is a also another issue here: require Foo::Bar; has the same problem. So how about fixing that one too? :) Sarathy |
From @chipdudeAccording to Gurusamy Sarathy:
I mildly disagree. I'd say that the cost of one malloc per require
Mmm, I'm cautious. Is it _never_ true that Win32 filesystem access is |
From @gsarOn Fri, 27 Dec 2002 10:38:01 EST, Chip Salzenberg wrote:
Why not make a function/macro to deal with that? The performance case I'm worried about is: sub doit {
AFAIK, yes. Sarathy |
From @chipdudeAccording to Gurusamy Sarathy:
But in this case, my patch won't hit the malloc, because that path is On the other hand, if case-flattening is introduced, all requires with On the gripping hand, Win32 filenames are Unicode, and I really don't |
From Philip.Newton@gmx.netOn Fri, 27 Dec 2002 10:38:01 -0500, chip@pobox.com (Chip Salzenberg)
Data point: we had a bunch of files on a Unix system in pairs called At first, the two could not be distinguished (opening either file always Which indicates to me that filesystem accesses can be case-sensitive Cheers, |
From @jkeenanOn Tue Dec 17 06:34:13 2002, kane@ns1.biocede.com wrote:
===========================================================================
This RT attracted comments from Chip and Gurusamy but has been Thank you very much. |
From @jkeenanOn Thu Sep 27 18:47:39 2012, jkeenan wrote:
===========================================================================
No comments received in over 7 months; closing. |
@jkeenan - Status changed from 'open' to 'rejected' |
From @ikegamiTechnically, the same problem exists on non-Windows platforms too. $ perl -le'require "abc.pm"; print for keys %INC' $ perl -le'require "./abc.pm"; print for keys %INC' $ perl -le'require "././abc.pm"; print for keys %INC' |
Migrated from rt.perl.org#19213 (status was 'rejected')
Searchable as RT19213$
The text was updated successfully, but these errors were encountered: