in reply to Re^4: Failure of catfile on Windows 7
in thread Failure of catfile on Windows 7
Well, you never know when you've got incomplete information
I meant information missing from the OP's post. Why would you think I meant information missing from the module? That makes no sense!There's no information missing. The source is on CPAN. Feel free to check it. You'll find the same thing.
I can't imagine why the code would change only the first part of the path to "\\". So I asked
Probably because you think something was changed. It's what you get when you place a path seperator between '' and '/foo/go/do'. That's fine on unix, but not on Windows.
No, I meant that given the text he fed it, "/foo/go/do", and assuming the module was doing what it was supposed to, I couldn't imagine why would it return "\\foo\go\do". The module actually does attempt to identify UNC pathnames (\\server\path\path), as well as drive letters (D:\Windows), and simple root folders (\users\me); so since the module is returning the text it is, it did not seem unreasonable to ask the OP if there is a server involved. It seems a bug like this surely would have been noticed before.
It was only later, when I started studying the code, that I realized exactly what you just described -- that it may be trying to concatenate '' and an existing path. Version 3.33 has some reasonably intelligent checks for that and seems to work correctly. But the code is a little hairy to follow and I just don't have time to break it all down.Anyway, I've been playing with version 3.33, the current version, on Vista and I'm not seeing the OP's results.
I got the correct and expected results:What did you get, then?
canonpath: \foo\go\do catfile: \foo\go\do
|
---|
Replies are listed 'Best First'. | |
---|---|
Re^6: Failure of catfile on Windows 7
by ikegami (Patriarch) on Mar 03, 2011 at 00:10 UTC | |
by furry_marmot (Pilgrim) on Mar 03, 2011 at 06:30 UTC | |
by ikegami (Patriarch) on Mar 03, 2011 at 09:17 UTC |