Peter Prymmer wrote:
How about introducing the new readdir and others in an extension?
How about maintaining the old ones in an extension? For some
tasks I need for perl to prepare DCL scripts that work better with the
. and .DIR file types.
It is not a problem if you are using VMS syntax filenames, and I am not
proposing changing the handling of VMS syntax filenames.
It is a big problem with UNIX syntax filenames, and the logic to
compensate for the incorrectly trailing "." and ".dir" is really complex.
For example lstat() will not return the correct answer on a UNIX format
name with an incorrectly trailing ".". But the only way to compensate
for this with out fixing the code in VMS.C is to retry a failing lstat()
call with one that has the trailing "." removed if there was one present.
I could put special case code in VMS.C, but this problem is just
occurring over and over again.
The trailing '.dir' messes up code that merges directories with out
calling the routines to do so.
And when you go into UNIX syntax filenames on ODS-5 syntax the problem
gets worse.
I originally thought I could manage things with a feature setting, but
what I am finding is that I would have to put that feature setting all
though the perl modules. I would probably also have to add a lot more
wrappers to C library functions to find all the currently broken cases
that are not yet detected by the Perl self tests.
Right now, I am trying to get File::Find in blead to pass all it's tests
in just the default ODS-2 mode with symbolic links, and it is a mess.
I am down to three tests reporting failures
And I can see that my fixes to make it work for ODS-2 are making some
ODS-5 filenames invisible.
-John
[EMAIL PROTECTED]
Personal Opinion Only