> That win32 branch of the code looks suspect > (I know it is not part of the commit). > Anyone have time to check it out? > Looks to me like it's dealing with the case where file:///C:/foo.ext is supplied.
*path_for_open = (char*)path + n + 1; This'll put us at the first ':' while (*(++*path_for_open)=='/'); This'll get us to the 'C' drive letter. #ifdef PHP_WIN32 if (*(*path_for_open + 1) != ':') #endif (*path_for_open)--; And this last says: If the next character is a colon, we're dealing with a win file path, so we want to pass off "C:/foo.txt". If it's not a colon, we've got a more traditional path (i.e.: '/foo.txt') so we want to back up one to include the original '/' What's wonky is that I don't see how you're supposed to specify a relative file path when specifying the file wrapper. ftp://relativepath/foo.txt gets caught as trying to access a remote file (even on unix). PHP4 seems to turn that into: file:/relativepath/foo.txt: open("/local/cvs/php5/file:/relative/foo.txt", O_RDONLY) = -1 ENOENT (No such file or directory) file://./foo.txt is no better on either version. -Sara -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php