Fossil SCM

proposed fix for clobbering existing files [5ba427be8809342c6fbdcf48c9c8365467048d28]

bch 2015-01-29 20:21 trunk
Commit bb15d408a4d68f8ab853e4dc6d2a00c51a33d24e
1 file changed +6
+6
--- src/db.c
+++ src/db.c
@@ -817,12 +817,18 @@
817817
** connection. An error results in process abort.
818818
*/
819819
LOCAL sqlite3 *db_open(const char *zDbName){
820820
int rc;
821821
sqlite3 *db;
822
+ struct stat sb;
822823
823824
if( g.fSqlTrace ) fossil_trace("-- sqlite3_open: [%s]\n", zDbName);
825
+
826
+ if (0 == stat(zDbName, &sb)) {
827
+ db_err("[%s]: %s", zDbName, "File already exists.");
828
+ }
829
+
824830
rc = sqlite3_open_v2(
825831
zDbName, &db,
826832
SQLITE_OPEN_READWRITE | SQLITE_OPEN_CREATE,
827833
g.zVfsName
828834
);
829835
--- src/db.c
+++ src/db.c
@@ -817,12 +817,18 @@
817 ** connection. An error results in process abort.
818 */
819 LOCAL sqlite3 *db_open(const char *zDbName){
820 int rc;
821 sqlite3 *db;
 
822
823 if( g.fSqlTrace ) fossil_trace("-- sqlite3_open: [%s]\n", zDbName);
 
 
 
 
 
824 rc = sqlite3_open_v2(
825 zDbName, &db,
826 SQLITE_OPEN_READWRITE | SQLITE_OPEN_CREATE,
827 g.zVfsName
828 );
829
--- src/db.c
+++ src/db.c
@@ -817,12 +817,18 @@
817 ** connection. An error results in process abort.
818 */
819 LOCAL sqlite3 *db_open(const char *zDbName){
820 int rc;
821 sqlite3 *db;
822 struct stat sb;
823
824 if( g.fSqlTrace ) fossil_trace("-- sqlite3_open: [%s]\n", zDbName);
825
826 if (0 == stat(zDbName, &sb)) {
827 db_err("[%s]: %s", zDbName, "File already exists.");
828 }
829
830 rc = sqlite3_open_v2(
831 zDbName, &db,
832 SQLITE_OPEN_READWRITE | SQLITE_OPEN_CREATE,
833 g.zVfsName
834 );
835

Keyboard Shortcuts

Open search /
Next entry (timeline) j
Previous entry (timeline) k
Open focused entry Enter
Show this help ?
Toggle theme Top nav button