Fossil SCM

Fix uninitialized variable in command-line shell [http://www.sqlite.org/src/info/dc2ac024d31a898b|dc2ac024d3] and other shell improvements, cherry-picked from SQLite trunk.

jan.nijtmans 2015-11-19 09:44 trunk
Commit 63256980eef3cff6b1022ddefdc4a7c6a3a59383
1 file changed +5 -5
+5 -5
--- src/shell.c
+++ src/shell.c
@@ -163,11 +163,11 @@
163163
/* Return the current wall-clock time */
164164
static sqlite3_int64 timeOfDay(void){
165165
static sqlite3_vfs *clockVfs = 0;
166166
sqlite3_int64 t;
167167
if( clockVfs==0 ) clockVfs = sqlite3_vfs_find(0);
168
- if( clockVfs->iVersion>=1 && clockVfs->xCurrentTimeInt64!=0 ){
168
+ if( clockVfs->iVersion>=2 && clockVfs->xCurrentTimeInt64!=0 ){
169169
clockVfs->xCurrentTimeInt64(clockVfs, &t);
170170
}else{
171171
double r;
172172
clockVfs->xCurrentTime(clockVfs, &r);
173173
t = (sqlite3_int64)(r*86400000.0);
@@ -2558,11 +2558,11 @@
25582558
{ "number of views:",
25592559
"SELECT count(*) FROM %s WHERE type='view'" },
25602560
{ "schema size:",
25612561
"SELECT total(length(sql)) FROM %s" },
25622562
};
2563
- sqlite3_file *pFile;
2563
+ sqlite3_file *pFile = 0;
25642564
int i;
25652565
char *zSchemaTab;
25662566
char *zDb = nArg>=2 ? azArg[1] : "main";
25672567
unsigned char aHdr[100];
25682568
open_db(p, 0);
@@ -4599,14 +4599,14 @@
45994599
data.shellFlgs |= SHFLG_Scratch;
46004600
}else if( strcmp(z,"-pagecache")==0 ){
46014601
int n, sz;
46024602
sz = (int)integerValue(cmdline_option_value(argc,argv,++i));
46034603
if( sz>70000 ) sz = 70000;
4604
- if( sz<800 ) sz = 800;
4604
+ if( sz<0 ) sz = 0;
46054605
n = (int)integerValue(cmdline_option_value(argc,argv,++i));
4606
- if( n<10 ) n = 10;
4607
- sqlite3_config(SQLITE_CONFIG_PAGECACHE, malloc(n*sz+1), sz, n);
4606
+ sqlite3_config(SQLITE_CONFIG_PAGECACHE,
4607
+ (n>0 && sz>0) ? malloc(n*sz) : 0, sz, n);
46084608
data.shellFlgs |= SHFLG_Pagecache;
46094609
}else if( strcmp(z,"-lookaside")==0 ){
46104610
int n, sz;
46114611
sz = (int)integerValue(cmdline_option_value(argc,argv,++i));
46124612
if( sz<0 ) sz = 0;
46134613
--- src/shell.c
+++ src/shell.c
@@ -163,11 +163,11 @@
163 /* Return the current wall-clock time */
164 static sqlite3_int64 timeOfDay(void){
165 static sqlite3_vfs *clockVfs = 0;
166 sqlite3_int64 t;
167 if( clockVfs==0 ) clockVfs = sqlite3_vfs_find(0);
168 if( clockVfs->iVersion>=1 && clockVfs->xCurrentTimeInt64!=0 ){
169 clockVfs->xCurrentTimeInt64(clockVfs, &t);
170 }else{
171 double r;
172 clockVfs->xCurrentTime(clockVfs, &r);
173 t = (sqlite3_int64)(r*86400000.0);
@@ -2558,11 +2558,11 @@
2558 { "number of views:",
2559 "SELECT count(*) FROM %s WHERE type='view'" },
2560 { "schema size:",
2561 "SELECT total(length(sql)) FROM %s" },
2562 };
2563 sqlite3_file *pFile;
2564 int i;
2565 char *zSchemaTab;
2566 char *zDb = nArg>=2 ? azArg[1] : "main";
2567 unsigned char aHdr[100];
2568 open_db(p, 0);
@@ -4599,14 +4599,14 @@
4599 data.shellFlgs |= SHFLG_Scratch;
4600 }else if( strcmp(z,"-pagecache")==0 ){
4601 int n, sz;
4602 sz = (int)integerValue(cmdline_option_value(argc,argv,++i));
4603 if( sz>70000 ) sz = 70000;
4604 if( sz<800 ) sz = 800;
4605 n = (int)integerValue(cmdline_option_value(argc,argv,++i));
4606 if( n<10 ) n = 10;
4607 sqlite3_config(SQLITE_CONFIG_PAGECACHE, malloc(n*sz+1), sz, n);
4608 data.shellFlgs |= SHFLG_Pagecache;
4609 }else if( strcmp(z,"-lookaside")==0 ){
4610 int n, sz;
4611 sz = (int)integerValue(cmdline_option_value(argc,argv,++i));
4612 if( sz<0 ) sz = 0;
4613
--- src/shell.c
+++ src/shell.c
@@ -163,11 +163,11 @@
163 /* Return the current wall-clock time */
164 static sqlite3_int64 timeOfDay(void){
165 static sqlite3_vfs *clockVfs = 0;
166 sqlite3_int64 t;
167 if( clockVfs==0 ) clockVfs = sqlite3_vfs_find(0);
168 if( clockVfs->iVersion>=2 && clockVfs->xCurrentTimeInt64!=0 ){
169 clockVfs->xCurrentTimeInt64(clockVfs, &t);
170 }else{
171 double r;
172 clockVfs->xCurrentTime(clockVfs, &r);
173 t = (sqlite3_int64)(r*86400000.0);
@@ -2558,11 +2558,11 @@
2558 { "number of views:",
2559 "SELECT count(*) FROM %s WHERE type='view'" },
2560 { "schema size:",
2561 "SELECT total(length(sql)) FROM %s" },
2562 };
2563 sqlite3_file *pFile = 0;
2564 int i;
2565 char *zSchemaTab;
2566 char *zDb = nArg>=2 ? azArg[1] : "main";
2567 unsigned char aHdr[100];
2568 open_db(p, 0);
@@ -4599,14 +4599,14 @@
4599 data.shellFlgs |= SHFLG_Scratch;
4600 }else if( strcmp(z,"-pagecache")==0 ){
4601 int n, sz;
4602 sz = (int)integerValue(cmdline_option_value(argc,argv,++i));
4603 if( sz>70000 ) sz = 70000;
4604 if( sz<0 ) sz = 0;
4605 n = (int)integerValue(cmdline_option_value(argc,argv,++i));
4606 sqlite3_config(SQLITE_CONFIG_PAGECACHE,
4607 (n>0 && sz>0) ? malloc(n*sz) : 0, sz, n);
4608 data.shellFlgs |= SHFLG_Pagecache;
4609 }else if( strcmp(z,"-lookaside")==0 ){
4610 int n, sz;
4611 sz = (int)integerValue(cmdline_option_value(argc,argv,++i));
4612 if( sz<0 ) sz = 0;
4613

Keyboard Shortcuts

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