diff --git a/manifest b/manifest index 1094ac9de9..06247a4574 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Fix\sthe\stest\slabels\sin\smallocC.test.\s(CVS\s4212) -D 2007-08-13T12:58:18 +C When\sloading\sa\sdatabase\sschema,\sdo\snot\sclear\sthe\sSQLITE_InternChanges\sflag.\sThis\sfixes\sthe\sproblem\sillustrated\sby\s(4211).\s(CVS\s4213) +D 2007-08-13T14:41:19 F Makefile.in 0c0e53720f658c7a551046442dd7afba0b72bfbe F Makefile.linux-gcc 65241babba6faf1152bf86574477baab19190499 F README 9c4e2d6706bdcc3efdd773ce752a8cdab4f90028 @@ -103,7 +103,7 @@ F src/pager.c cdf561d3ae4009be902df714da4518dc3522e206 F src/pager.h 94110a5570dca30d54a883e880a3633b2e4c05ae F src/parse.y ad2ce25665be7f7303137f774a4e3e72e0d036ff F src/pragma.c 7914a6b9ea05f158800116dfcae11e52ab8e39c4 -F src/prepare.c 609bb27860ce98ab39889fecc0998dfd8220891b +F src/prepare.c 3257b63db949aee338a16ad23e09df8d56c1c36f F src/printf.c 9b3048d270e8bb2f8b910b491ac3aadece6cfab2 F src/random.c 6119474a6f6917f708c1dee25b9a8e519a620e88 F src/select.c 3b167744fc375bddfddcef87feb18f5171737677 @@ -525,7 +525,7 @@ F www/tclsqlite.tcl 8be95ee6dba05eabcd27a9d91331c803f2ce2130 F www/vdbe.tcl 87a31ace769f20d3627a64fa1fade7fed47b90d0 F www/version3.tcl 890248cf7b70e60c383b0e84d77d5132b3ead42b F www/whentouse.tcl fc46eae081251c3c181bd79c5faef8195d7991a5 -P be50387e658a9a73e12b07ca89ae75e871489f16 -R fdaa1b644a67c60415028c6d452b9b0d -U drh -Z 9139cdcd5ab7595954bd78c2fc6145da +P 7d4cdff444b98b76a34bd85d0a43cda28e7dffe4 +R 67369a53b9b79d6642304c8698e2f200 +U danielk1977 +Z 3331cfbcfcebf80726e0c74ecb2e7084 diff --git a/manifest.uuid b/manifest.uuid index 6879e286d9..aaedf3cc0b 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -7d4cdff444b98b76a34bd85d0a43cda28e7dffe4 \ No newline at end of file +540a7b28bc37709056cfdb13286274ec5bdd8423 \ No newline at end of file diff --git a/src/prepare.c b/src/prepare.c index 82c72413ea..4a040eb490 100644 --- a/src/prepare.c +++ b/src/prepare.c @@ -13,7 +13,7 @@ ** interface, and routines that contribute to loading the database schema ** from disk. ** -** $Id: prepare.c,v 1.51 2007/06/24 10:14:00 danielk1977 Exp $ +** $Id: prepare.c,v 1.52 2007/08/13 14:41:19 danielk1977 Exp $ */ #include "sqliteInt.h" #include "os.h" @@ -337,7 +337,7 @@ static int sqlite3InitOne(sqlite3 *db, int iDb, char **pzErrMsg){ */ int sqlite3Init(sqlite3 *db, char **pzErrMsg){ int i, rc; - int called_initone = 0; + int commit_internal = !(db->flags&SQLITE_InternChanges); if( db->init.busy ) return SQLITE_OK; rc = SQLITE_OK; @@ -348,7 +348,6 @@ int sqlite3Init(sqlite3 *db, char **pzErrMsg){ if( rc ){ sqlite3ResetInternalSchema(db, i); } - called_initone = 1; } /* Once all the other databases have been initialised, load the schema @@ -361,12 +360,11 @@ int sqlite3Init(sqlite3 *db, char **pzErrMsg){ if( rc ){ sqlite3ResetInternalSchema(db, 1); } - called_initone = 1; } #endif db->init.busy = 0; - if( rc==SQLITE_OK && called_initone ){ + if( rc==SQLITE_OK && commit_internal ){ sqlite3CommitInternalChanges(db); }