aboutsummaryrefslogtreecommitdiff
path: root/src/callback.c
diff options
context:
space:
mode:
authordrh <drh@noemail.net>2011-03-18 21:55:46 +0000
committerdrh <drh@noemail.net>2011-03-18 21:55:46 +0000
commitc2a75551ef8a944e01df64511190bce9be6acb19 (patch)
treef0b4f4315f2a4a17a73d5d93315ad5300b939067 /src/callback.c
parentd416fe799569ff1a570009187d218e5d0dc7c86c (diff)
downloadsqlite-c2a75551ef8a944e01df64511190bce9be6acb19.tar.gz
sqlite-c2a75551ef8a944e01df64511190bce9be6acb19.zip
Add a generation counter to the Schema object and enhance OP_VerifySchema
to also check the Schema generation. Fix for ticket [f7b4edece25c99]. FossilOrigin-Name: 36c04dd1695f0899b53ce58738181b146fc005ed
Diffstat (limited to 'src/callback.c')
-rw-r--r--src/callback.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/callback.c b/src/callback.c
index eaff6d0e0..fdee9bc09 100644
--- a/src/callback.c
+++ b/src/callback.c
@@ -427,7 +427,10 @@ void sqlite3SchemaFree(void *p){
sqlite3HashClear(&temp1);
sqlite3HashClear(&pSchema->fkeyHash);
pSchema->pSeqTab = 0;
- pSchema->flags &= ~DB_SchemaLoaded;
+ if( pSchema->flags & DB_SchemaLoaded ){
+ pSchema->iGeneration++;
+ pSchema->flags &= ~DB_SchemaLoaded;
+ }
}
/*