Check-in [3cdb768fca]
Not logged in
Overview

SHA1 Hash:3cdb768fca1e7bfbacfab98b193329c43f6d89be
Date: 2007-10-06 16:40:48
User: drh
Comment:Do not attempt to access the global_config table if the ~/.fossil database has not been opened.
Timelines: ancestors | descendants | both | trunk
Other Links: files | ZIP archive | manifest

Tags And Properties
Changes
[hide diffs]

Modified src/db.c from [0feeb7fd06] to [a10c6acdae].

@@ -837,11 +837,11 @@
 char *db_get(const char *zName, char *zDefault){
   char *z = 0;
   if( g.repositoryOpen ){
     z = db_text(0, "SELECT value FROM config WHERE name=%Q", zName);
   }
-  if( z==0 ){
+  if( z==0 && g.configOpen ){
     z = db_text(0, "SELECT value FROM global_config WHERE name=%Q", zName);
   }
   if( z==0 ){
     z = zDefault;
   }
@@ -855,11 +855,15 @@
     db_multi_exec("DELETE FROM config WHERE name=%Q", zName);
   }
   db_end_transaction(0);
 }
 int db_is_global(const char *zName){
-  return db_exists("SELECT 1 FROM global_config WHERE name=%Q", zName);
+  if( g.configOpen ){
+    return db_exists("SELECT 1 FROM global_config WHERE name=%Q", zName);
+  }else{
+    return 0;
+  }
 }
 int db_get_int(const char *zName, int dflt){
   int v;
   int rc;
   if( g.repositoryOpen ){
@@ -871,11 +875,11 @@
     }
     db_finalize(&q);
   }else{
     rc = SQLITE_DONE;
   }
-  if( rc==SQLITE_DONE ){
+  if( rc==SQLITE_DONE && g.configOpen ){
     v = db_int(dflt, "SELECT value FROM global_config WHERE name=%Q", zName);
   }
   return v;
 }
 void db_set_int(const char *zName, int value, int globalFlag){