Craig A. Berry wrote:
At 7:36 PM -0400 9/16/05, John E. Malmberg wrote:

John E. Malmberg wrote:

It appears something is wrong with glob() on VMS.

glob("./tmpdir/a*.tmp") is returning "t/tmpdir/a1.tmp"
>>>when the current working directory is "t".
glob("tmpdir/a*.tmp") is returning "tmpdir/a1.tmp" as expected.

I will need to look at adding the case of ./dir/* to the glob tests.
>>I suspect that it has been broken for a while.  I will look at this
>>as I get into updating the file system related functions.

There are certainly limitations to the home-grown glob() on VMS.  It
basically just converts the '?' wildcard to '%' and calls
LIB$FIND_FILE.  See Perl_start_glob() in doio.c.  Also relevant is
trim_unixpath() in [.vms]vms.c, which makes a very modest attempt to
pick apart the pieces of a Unix path spec containing wildcards and
put them back together again.

As of OpenVMS 7.3-2, the C Library provides a glob() function, so it may be better to use it on Perls built on that release or later rather than trying to fix it a different way.

-John
[EMAIL PROTECTED]
Personal Opinion Only

Reply via email to