Fossil SCM
Fix operations by Cygwin fossil on a checkout done earlier by Win32 fossil.
Commit
340cee03ee310a3b8ff604f742a9734404dbd5e1
Parent
e1eb7aa88dfc542…
1 file changed
+14
-2
M
src/db.c
+14
-2
| --- src/db.c | ||
| +++ src/db.c | ||
| @@ -712,10 +712,16 @@ | ||
| 712 | 712 | LOCAL sqlite3 *db_open(const char *zDbName){ |
| 713 | 713 | int rc; |
| 714 | 714 | const char *zVfs; |
| 715 | 715 | sqlite3 *db; |
| 716 | 716 | |
| 717 | +#if defined(__CYGWIN__) | |
| 718 | + if( (fossil_isalpha(zDbName[0]) && zDbName[1]==':' | |
| 719 | + && (zDbName[2]=='\\' || zDbName[2]=='/')) ) { | |
| 720 | + zDbName = mprintf("/cygdrive/%c/%s", zDbName[0], zDbName+3); | |
| 721 | + } | |
| 722 | +#endif | |
| 717 | 723 | if( g.fSqlTrace ) fossil_trace("-- sqlite3_open: [%s]\n", zDbName); |
| 718 | 724 | zVfs = fossil_getenv("FOSSIL_VFS"); |
| 719 | 725 | rc = sqlite3_open_v2( |
| 720 | 726 | zDbName, &db, |
| 721 | 727 | SQLITE_OPEN_READWRITE | SQLITE_OPEN_CREATE, |
| @@ -1020,13 +1026,19 @@ | ||
| 1020 | 1026 | g.json.resultCode = FSL_JSON_E_DB_NOT_VALID; |
| 1021 | 1027 | #endif |
| 1022 | 1028 | fossil_panic("not a valid repository: %s", zDbName); |
| 1023 | 1029 | } |
| 1024 | 1030 | } |
| 1025 | - db_open_or_attach(zDbName, "repository", 0); | |
| 1026 | - g.repositoryOpen = 1; | |
| 1031 | +#if defined(__CYGWIN__) | |
| 1032 | + if( (fossil_isalpha(zDbName[0]) && zDbName[1]==':' | |
| 1033 | + && (zDbName[2]=='\\' || zDbName[2]=='/')) ) { | |
| 1034 | + g.zRepositoryName = mprintf("/cygdrive/%c/%s", zDbName[0], zDbName+3); | |
| 1035 | + } else | |
| 1036 | +#endif | |
| 1027 | 1037 | g.zRepositoryName = mprintf("%s", zDbName); |
| 1038 | + db_open_or_attach(g.zRepositoryName, "repository", 0); | |
| 1039 | + g.repositoryOpen = 1; | |
| 1028 | 1040 | /* Cache "allow-symlinks" option, because we'll need it on every stat call */ |
| 1029 | 1041 | g.allowSymlinks = db_get_boolean("allow-symlinks", 0); |
| 1030 | 1042 | } |
| 1031 | 1043 | |
| 1032 | 1044 | /* |
| 1033 | 1045 |
| --- src/db.c | |
| +++ src/db.c | |
| @@ -712,10 +712,16 @@ | |
| 712 | LOCAL sqlite3 *db_open(const char *zDbName){ |
| 713 | int rc; |
| 714 | const char *zVfs; |
| 715 | sqlite3 *db; |
| 716 | |
| 717 | if( g.fSqlTrace ) fossil_trace("-- sqlite3_open: [%s]\n", zDbName); |
| 718 | zVfs = fossil_getenv("FOSSIL_VFS"); |
| 719 | rc = sqlite3_open_v2( |
| 720 | zDbName, &db, |
| 721 | SQLITE_OPEN_READWRITE | SQLITE_OPEN_CREATE, |
| @@ -1020,13 +1026,19 @@ | |
| 1020 | g.json.resultCode = FSL_JSON_E_DB_NOT_VALID; |
| 1021 | #endif |
| 1022 | fossil_panic("not a valid repository: %s", zDbName); |
| 1023 | } |
| 1024 | } |
| 1025 | db_open_or_attach(zDbName, "repository", 0); |
| 1026 | g.repositoryOpen = 1; |
| 1027 | g.zRepositoryName = mprintf("%s", zDbName); |
| 1028 | /* Cache "allow-symlinks" option, because we'll need it on every stat call */ |
| 1029 | g.allowSymlinks = db_get_boolean("allow-symlinks", 0); |
| 1030 | } |
| 1031 | |
| 1032 | /* |
| 1033 |
| --- src/db.c | |
| +++ src/db.c | |
| @@ -712,10 +712,16 @@ | |
| 712 | LOCAL sqlite3 *db_open(const char *zDbName){ |
| 713 | int rc; |
| 714 | const char *zVfs; |
| 715 | sqlite3 *db; |
| 716 | |
| 717 | #if defined(__CYGWIN__) |
| 718 | if( (fossil_isalpha(zDbName[0]) && zDbName[1]==':' |
| 719 | && (zDbName[2]=='\\' || zDbName[2]=='/')) ) { |
| 720 | zDbName = mprintf("/cygdrive/%c/%s", zDbName[0], zDbName+3); |
| 721 | } |
| 722 | #endif |
| 723 | if( g.fSqlTrace ) fossil_trace("-- sqlite3_open: [%s]\n", zDbName); |
| 724 | zVfs = fossil_getenv("FOSSIL_VFS"); |
| 725 | rc = sqlite3_open_v2( |
| 726 | zDbName, &db, |
| 727 | SQLITE_OPEN_READWRITE | SQLITE_OPEN_CREATE, |
| @@ -1020,13 +1026,19 @@ | |
| 1026 | g.json.resultCode = FSL_JSON_E_DB_NOT_VALID; |
| 1027 | #endif |
| 1028 | fossil_panic("not a valid repository: %s", zDbName); |
| 1029 | } |
| 1030 | } |
| 1031 | #if defined(__CYGWIN__) |
| 1032 | if( (fossil_isalpha(zDbName[0]) && zDbName[1]==':' |
| 1033 | && (zDbName[2]=='\\' || zDbName[2]=='/')) ) { |
| 1034 | g.zRepositoryName = mprintf("/cygdrive/%c/%s", zDbName[0], zDbName+3); |
| 1035 | } else |
| 1036 | #endif |
| 1037 | g.zRepositoryName = mprintf("%s", zDbName); |
| 1038 | db_open_or_attach(g.zRepositoryName, "repository", 0); |
| 1039 | g.repositoryOpen = 1; |
| 1040 | /* Cache "allow-symlinks" option, because we'll need it on every stat call */ |
| 1041 | g.allowSymlinks = db_get_boolean("allow-symlinks", 0); |
| 1042 | } |
| 1043 | |
| 1044 | /* |
| 1045 |