-C Fix\sthe\ssqlite3GetInt32()\sfunction\sso\sthat\sit\scorrectly\sreturns\s0\son\sa\nzero-length\sinput\sstring.
-D 2017-05-03T17:44:28.665
+C Remove\sthe\sunused\s"sqlite3_stack_used"\sTCL\scommand\sfrom\sthe\stest\sharness.
+D 2017-05-03T19:36:50.091
F Makefile.in 1cc758ce3374a32425e4d130c2fe7b026b20de5b8843243de75f087c0a2661fb
F Makefile.linux-gcc 7bc79876b875010e8c8f9502eb935ca92aa3c434
F Makefile.msc 6a8c838220f7c00820e1fc0ac1bccaaa8e5676067e1dbfa1bafa7a4ffecf8ae6
F src/status.c a9e66593dfb28a9e746cba7153f84d49c1ddc4b1
F src/table.c b46ad567748f24a326d9de40e5b9659f96ffff34
F src/tclsqlite.c 6c2151b6d8d98e183a04466d40df8889c0574d79
-F src/test1.c 8a98191a1da8e100f77cdb5cc716df67d405028d
+F src/test1.c c99f0442918a7a5d5b68a95d6024c211989e6c782c15ced5a558994baaf76a5e
F src/test2.c 3efb99ab7f1fc8d154933e02ae1378bac9637da5
F src/test3.c d03f5b5da9a2410b7a91c64b0d3306ed28ab6fee
F src/test4.c 18ec393bb4d0ad1de729f0b94da7267270f3d8e6
F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc
F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e
F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0
-P 31a51b4d168065fa59cc0e52ba798bd87ac82160c675bd531442b65133edb401
-R 1a9ae67768895b2203701f1f99daf69e
+P 05eba9e3a5f9bb2a40af1dacd885e1915fbcd20b9af4cf0eed79ac16dbeba31b
+R cc73eb460d9854ad23aa843f2d63b269
U drh
-Z 6a4f04dd64a8ebc17f6d0713668a32cd
+Z ade9e12e596bfcbd80a3bdd31cc0c7fe
return TCL_OK;
}
-static u8 *sqlite3_stack_baseline = 0;
-
-/*
-** Fill the stack with a known bitpattern.
-*/
-static void prepStack(void){
- int i;
- u32 bigBuf[65536];
- for(i=0; i<sizeof(bigBuf)/sizeof(bigBuf[0]); i++) bigBuf[i] = 0xdeadbeef;
- sqlite3_stack_baseline = (u8*)&bigBuf[65536];
-}
-
-/*
-** Get the current stack depth. Used for debugging only.
-*/
-u64 sqlite3StackDepth(void){
- u8 x;
- return (u64)(sqlite3_stack_baseline - &x);
-}
-
-/*
-** Usage: sqlite3_stack_used DB SQL
-**
-** Try to measure the amount of stack space used by a call to sqlite3_exec
-*/
-static int SQLITE_TCLAPI test_stack_used(
- void * clientData,
- Tcl_Interp *interp,
- int argc,
- char **argv
-){
- sqlite3 *db;
- int i;
- if( argc!=3 ){
- Tcl_AppendResult(interp, "wrong # args: should be \"", argv[0],
- " DB SQL", 0);
- return TCL_ERROR;
- }
- if( getDbPointer(interp, argv[1], &db) ) return TCL_ERROR;
- prepStack();
- (void)sqlite3_exec(db, argv[2], 0, 0, 0);
- for(i=65535; i>=0 && ((u32*)sqlite3_stack_baseline)[-i]==0xdeadbeef; i--){}
- Tcl_SetObjResult(interp, Tcl_NewIntObj(i*4));
- return TCL_OK;
-}
-
/*
** Usage: sqlite_delete_function DB function-name
**
{ "sqlite_delete_function", (Tcl_CmdProc*)delete_function },
{ "sqlite_delete_collation", (Tcl_CmdProc*)delete_collation },
{ "sqlite3_get_autocommit", (Tcl_CmdProc*)get_autocommit },
- { "sqlite3_stack_used", (Tcl_CmdProc*)test_stack_used },
{ "sqlite3_busy_timeout", (Tcl_CmdProc*)test_busy_timeout },
{ "printf", (Tcl_CmdProc*)test_printf },
{ "sqlite3IoTrace", (Tcl_CmdProc*)test_io_trace },