]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Clean up obfuscated code in sqlite3_table_column_meta_data().
authordrh <drh@noemail.net>
Mon, 16 Jun 2008 20:51:15 +0000 (20:51 +0000)
committerdrh <drh@noemail.net>
Mon, 16 Jun 2008 20:51:15 +0000 (20:51 +0000)
Be sure to invoke sqlite3_initialize() within sqlite3_mprintf(). (CVS 5224)

FossilOrigin-Name: bb4edb53964559fc1cd69700beb72ecc29b58f37

manifest
manifest.uuid
src/main.c
src/printf.c

index 99edf7924fb567405cb65000298c2c05eed6d964..770edd1a08063225c4ed86882360e0ab0780d72b 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Fix\sa\srecently\sintroduced\sresource\sleak\sin\stest\sfile\sincrblob2.test\s(forgot\sto\sclose\sa\sblob\shandle).\s(CVS\s5223)
-D 2008-06-16T14:36:01
+C Clean\sup\sobfuscated\scode\sin\ssqlite3_table_column_meta_data().\nBe\ssure\sto\sinvoke\ssqlite3_initialize()\swithin\ssqlite3_mprintf().\s(CVS\s5224)
+D 2008-06-16T20:51:16
 F Makefile.arm-wince-mingw32ce-gcc ac5f7b2cef0cd850d6f755ba6ee4ab961b1fadf7
 F Makefile.in dc5608df93faf4406cfd7a1c8ed9ab93d8bfbfd5
 F Makefile.linux-gcc d53183f4aa6a9192d249731c90dbdffbd2c68654
@@ -115,7 +115,7 @@ F src/insert.c c2ead6c36566de8e3f130e7ab1431723a269d5d7
 F src/journal.c cffd2cd214e58c0e99c3ff632b3bee6c7cbb260e
 F src/legacy.c 3626c71fb70912abec9a4312beba753a9ce800df
 F src/loadext.c f99a75534a53e281fa2461239ee4a4b4bf6ad564
-F src/main.c 4540ec2c0ba99a0dcb8bd114f733007958c6258e
+F src/main.c 1f65b285a87f237e9e63c9628f220d10aef36b81
 F src/malloc.c c5bdf8967df9acc9765ed1b55c0c0eba9fe9494c
 F src/md5.c 008216bbb5d34c6fbab5357aa68575ad8a31516a
 F src/mem1.c c8e07e9e6620b1aabf9bdefd19dee93831f67733
@@ -139,7 +139,7 @@ F src/pager.h 6aa3050a3c684475a5a9dbad5ff1cebad612acba
 F src/parse.y 8c2c3145eebe1964eb279cb3c4e502eae28bb0fa
 F src/pragma.c 70e7c865dce85fdf9df81848af2169009a56ed08
 F src/prepare.c 3c19149e75fbf3b08471a389f064da7302cad9c5
-F src/printf.c ff67198b0deee15b4415149880b8e3ab0a36705b
+F src/printf.c 8b063da9dcde26b7c500a01444b718d86f21bc6e
 F src/random.c 2b2db2de4ab491f5a14d3480466f8f4b5a5db74a
 F src/select.c 669687459e7d0193c89de06c5dbed55b4a41191c
 F src/shell.c a12ea645271b7876c8f080146f48e20b00d367ec
@@ -594,7 +594,7 @@ F tool/speedtest16.c c8a9c793df96db7e4933f0852abb7a03d48f2e81
 F tool/speedtest2.tcl ee2149167303ba8e95af97873c575c3e0fab58ff
 F tool/speedtest8.c 1dbced29de5f59ba2ebf877edcadf171540374d1
 F tool/speedtest8inst1.c 293327bc76823f473684d589a8160bde1f52c14e
-P 1b9478da2f421c1270e76297324fff8037d2f231
-R 60087b858e49df0fe447344466833ade
-U danielk1977
-Z 896538a54b48dcf65f77aa8165a8f5a9
+P 88e1c6092e48c860950d3437f264785243bb67ed
+R a1b6bf6dbc2358eb6da4aeb0eb037ba0
+U drh
+Z 3b2158d65e565f1ac34f84ff1bba4421
index abee39c347e076b43c7b473e86fb33d659196a7f..b51dbce506e154866df0162b064be15981a4c389 100644 (file)
@@ -1 +1 @@
-88e1c6092e48c860950d3437f264785243bb67ed
\ No newline at end of file
+bb4edb53964559fc1cd69700beb72ecc29b58f37
\ No newline at end of file
index 261fadf163f245f1b377786dbf0eff2b4efe1785..803c0ec4bdc7b96163b5599e773525c619188e71 100644 (file)
@@ -14,7 +14,7 @@
 ** other files are for internal use by SQLite and should not be
 ** accessed by users of the library.
 **
-** $Id: main.c,v 1.444 2008/06/14 16:56:22 drh Exp $
+** $Id: main.c,v 1.445 2008/06/16 20:51:16 drh Exp $
 */
 #include "sqliteInt.h"
 #include <ctype.h>
@@ -1554,7 +1554,7 @@ int sqlite3_table_column_metadata(
   char const **pzCollSeq,     /* OUTPUT: Collation sequence name */
   int *pNotNull,              /* OUTPUT: True if NOT NULL constraint exists */
   int *pPrimaryKey,           /* OUTPUT: True if column part of PK */
-  int *pAutoinc               /* OUTPUT: True if colums is auto-increment */
+  int *pAutoinc               /* OUTPUT: True if column is auto-increment */
 ){
   int rc;
   char *zErrMsg = 0;
@@ -1617,9 +1617,9 @@ int sqlite3_table_column_metadata(
   if( pCol ){
     zDataType = pCol->zType;
     zCollSeq = pCol->zColl;
-    notnull = (pCol->notNull?1:0);
-    primarykey  = (pCol->isPrimKey?1:0);
-    autoinc = ((pTab->iPKey==iCol && pTab->autoInc)?1:0);
+    notnull = pCol->notNull!=0;
+    primarykey  = pCol->isPrimKey!=0;
+    autoinc = pTab->iPKey==iCol && pTab->autoInc;
   }else{
     zDataType = "INTEGER";
     primarykey = 1;
index d0b219a4176ec8a0ce75226da14a15623aba6596..dc8d711059303d7955584d6f7755b4526d3d9b98 100644 (file)
@@ -5,7 +5,7 @@
 ** an historical reference.  Most of the "enhancements" have been backed
 ** out so that the functionality is now the same as standard printf().
 **
-** $Id: printf.c,v 1.86 2008/06/15 02:51:48 drh Exp $
+** $Id: printf.c,v 1.87 2008/06/16 20:51:16 drh Exp $
 **
 **************************************************************************
 **
@@ -850,6 +850,7 @@ char *sqlite3_vmprintf(const char *zFormat, va_list ap){
   char *z;
   char zBase[SQLITE_PRINT_BUF_SIZE];
   StrAccum acc;
+  sqlite3_initialize();
   sqlite3StrAccumInit(&acc, zBase, sizeof(zBase), SQLITE_MAX_LENGTH);
   vxprintf(&acc, 0, zFormat, ap);
   z = sqlite3StrAccumFinish(&acc);
@@ -863,6 +864,7 @@ char *sqlite3_vmprintf(const char *zFormat, va_list ap){
 char *sqlite3_mprintf(const char *zFormat, ...){
   va_list ap;
   char *z;
+  sqlite3_initialize();
   va_start(ap, zFormat);
   z = sqlite3_vmprintf(zFormat, ap);
   va_end(ap);