diff options
author | drh <drh@noemail.net> | 2011-03-18 21:55:46 +0000 |
---|---|---|
committer | drh <drh@noemail.net> | 2011-03-18 21:55:46 +0000 |
commit | c2a75551ef8a944e01df64511190bce9be6acb19 (patch) | |
tree | f0b4f4315f2a4a17a73d5d93315ad5300b939067 /src/callback.c | |
parent | d416fe799569ff1a570009187d218e5d0dc7c86c (diff) | |
download | sqlite-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.c | 5 |
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; + } } /* |