[PATCH] normalize_posix_path and c:/foo/bar

2008-03-16 Thread Brian Dessent
There's a small buglet in normalize_posix_path in that it doesn't see c:/foo/bar type paths as being win32 and so it treats them as a relative path and prepends cwd. Things go downhill from there. The testcase that exposed this was insight failing to load because some of the tcl parts use win32

Re: [PATCH] QueryDosDevice in handle_to_fn

2008-03-16 Thread Christopher Faylor
On Sun, Mar 16, 2008 at 04:22:13PM +0100, Corinna Vinschen wrote: On Mar 16 03:14, Brian Dessent wrote: I debugged this and found the strangest thing, when you call QueryDosDevice (NULL, fnbuf, len) to get the list of all DOS devices and len = 65536, Win32 always returns 0 with GetLastError

Re: [PATCH] QueryDosDevice in handle_to_fn

2008-03-16 Thread Brian Dessent
Corinna Vinschen wrote: len is a const value. Checking len for being 65536 is a constant expression which always results in qddlen being 65535 so the ?: is a noop, more or less. Yeah, I realized that, and the compiler should optimize it away completely. I put it explicitly as a test in the

Re: [PATCH] normalize_posix_path and c:/foo/bar

2008-03-16 Thread Brian Dessent
Corinna Vinschen wrote: Actually that was intended, but unfortunately the current path handling deliberately creates DOS paths with slashes (in find_exec) right now, so that doesn't work ATM. I guess what I don't understand is how it's both possible for open(c:/foo/bar.exe) to succeed and for