On 6/5/2013 11:25, Philip Goetz wrote:
I suspect it's intercepting calls to the filesystem.

Yes, the Cygwin DLL does translate POSIX paths to Windows paths internally. Then it calls the native APIs for you to give you the POSIX effect you asked for via the DLL.

Part of the fun here is that the Cygwin DLL *also* tries to cope with Windows style paths, and the Windows APIs *also* sometimes cope with forward slashes.

Because relying on this can cause all kinds of havoc, the DLL now warns you about it the first time you try it in a session:

$ ls c:/
cygwin warning:
  MS-DOS style path detected: c:/
  Preferred POSIX equivalent is: /c
CYGWIN environment variable option "nodosfilewarning" turns off this warning.
  Consult the user's guide for more details about POSIX paths:
    http://cygwin.com/cygwin-ug-net/using.html#using-pathnames

Not all code paths cause this warning, though, and sometimes the hack to cope with backslashes doesn't get run at all. I wouldn't expect it to even try in this case, since the first part of the path looks POSIXy.

Bottom line, I suspect there is a bug in SQLite here. It shouldn't be using backslashes in a Cygwin build.
_______________________________________________
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to