diff options
author | mistachkin <mistachkin@noemail.net> | 2013-07-31 22:39:26 +0000 |
---|---|---|
committer | mistachkin <mistachkin@noemail.net> | 2013-07-31 22:39:26 +0000 |
commit | aa82eba40d90cc43bf5c2cc4f0c837c9b03b277b (patch) | |
tree | caab5a36e3bacca69a72a2b290061dda1fffe42f /src | |
parent | 16a2e7a0536b9a6535ad732ab5a089cdef30087b (diff) | |
download | sqlite-aa82eba40d90cc43bf5c2cc4f0c837c9b03b277b.tar.gz sqlite-aa82eba40d90cc43bf5c2cc4f0c837c9b03b277b.zip |
Slight modifications to path name translation handling for Cygwin.
FossilOrigin-Name: 33ba1f4c5dc2ef8292adf17a32ade0cde0887d88
Diffstat (limited to 'src')
-rw-r--r-- | src/os_win.c | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/src/os_win.c b/src/os_win.c index 1f178e1ff..3647b0e47 100644 --- a/src/os_win.c +++ b/src/os_win.c @@ -17,6 +17,7 @@ #ifdef __CYGWIN__ # include <sys/cygwin.h> +# include <errno.h> #endif /* @@ -4530,13 +4531,20 @@ static int winFullPathname( ** one by prepending the data directory and a slash. */ char zOut[SQLITE_WIN32_MAX_PATH+1]; - memset(zOut, 0, SQLITE_WIN32_MAX_PATH+1); - cygwin_conv_path(CCP_POSIX_TO_WIN_A|CCP_RELATIVE, zRelative, zOut, - SQLITE_WIN32_MAX_PATH+1); + if( cygwin_conv_path(CCP_POSIX_TO_WIN_A|CCP_RELATIVE, zRelative, zOut, + SQLITE_WIN32_MAX_PATH+1)<0 ){ + winLogError(SQLITE_CANTOPEN_FULLPATH, (DWORD)errno, "cygwin_conv_path", + zRelative); + return SQLITE_CANTOPEN_FULLPATH; + } sqlite3_snprintf(MIN(nFull, pVfs->mxPathname), zFull, "%s\\%s", sqlite3_data_directory, zOut); }else{ - cygwin_conv_path(CCP_POSIX_TO_WIN_A, zRelative, zFull, nFull); + if( cygwin_conv_path(CCP_POSIX_TO_WIN_A, zRelative, zFull, nFull)<0 ){ + winLogError(SQLITE_CANTOPEN_FULLPATH, (DWORD)errno, "cygwin_conv_path", + zRelative); + return SQLITE_CANTOPEN_FULLPATH; + } } return SQLITE_OK; #endif |