diff options
author | drh <drh@noemail.net> | 2009-09-14 23:47:24 +0000 |
---|---|---|
committer | drh <drh@noemail.net> | 2009-09-14 23:47:24 +0000 |
commit | 3492dd71dd57d91d89b9571d80e22e563aff055d (patch) | |
tree | 1dac8fd466334f840b0d73a8eb0c05e44bec4ff2 /src/build.c | |
parent | 323eb204640f5b21af54fba89739c54c2cba9ed6 (diff) | |
download | sqlite-3492dd71dd57d91d89b9571d80e22e563aff055d.tar.gz sqlite-3492dd71dd57d91d89b9571d80e22e563aff055d.zip |
Make sure sufficient space is allocated for at least one VDBE cursor when
autoincrement is used. Ticket [a696379c1f088].
FossilOrigin-Name: 2b2a1ef74e24857b8d18f6370894588fc2aa5ebb
Diffstat (limited to 'src/build.c')
-rw-r--r-- | src/build.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/build.c b/src/build.c index f4f62ea82..c23d92fb9 100644 --- a/src/build.c +++ b/src/build.c @@ -196,6 +196,9 @@ void sqlite3FinishCoding(Parse *pParse){ sqlite3VdbeTrace(v, trace); #endif assert( pParse->iCacheLevel==0 ); /* Disables and re-enables match */ + /* A minimum of one cursor is required if autoincrement is used + * See ticket [a696379c1f08866] */ + if( pParse->pAinc!=0 && pParse->nTab==0 ) pParse->nTab = 1; sqlite3VdbeMakeReady(v, pParse->nVar, pParse->nMem, pParse->nTab, pParse->nMaxArg, pParse->explain, pParse->isMultiWrite && pParse->mayAbort); |