Differences From:
File
src/db.c
part of check-in
[d5e7891b07]
- Add a more advanced commit-hook mechanism that allows us to
specify multiple procedures in a particular order prior to commit.
Continuing work toward getting tickets going.
by
drh on
2007-11-18 20:48:07.
[view]
To:
File
src/db.c
part of check-in
[f9f7cf5684]
- The autosync setting understands values like "on", "off", "true", and "false"
in addition to 0 and 1. Updates to the documentation.
by
drh on
2007-11-24 02:45:39.
[view]
@@ -951,8 +951,21 @@
if( globalFlag && g.repositoryOpen ){
db_multi_exec("DELETE FROM config WHERE name=%Q", zName);
}
db_end_transaction(0);
+}
+int db_get_boolean(const char *zName, int dflt){
+ static const char *azOn[] = { "on", "yes", "true", "1" };
+ static const char *azOff[] = { "off", "no", "false", "0" };
+ int i;
+ char *zVal = db_get(zName, dflt ? "on" : "off");
+ for(i=0; i<sizeof(azOn)/sizeof(azOn[0]); i++){
+ if( strcmp(zVal,azOn[i])==0 ) return 1;
+ }
+ for(i=0; i<sizeof(azOff)/sizeof(azOff[0]); i++){
+ if( strcmp(zVal,azOff[i])==0 ) return 0;
+ }
+ return dflt;
}
char *db_lget(const char *zName, char *zDefault){
return db_text((char*)zDefault,
"SELECT value FROM vvar WHERE name=%Q", zName);