diff options
author | drh <drh@noemail.net> | 2007-05-08 13:58:26 +0000 |
---|---|---|
committer | drh <drh@noemail.net> | 2007-05-08 13:58:26 +0000 |
commit | e5c941b83b07a418748fd63870017d6ca67730f4 (patch) | |
tree | ff93e5035c132f9ce1488a33127dd9646633cf55 /src/tokenize.c | |
parent | 4b5710e4861ed3f051dff8ec5389e8ff9b1258c7 (diff) | |
download | sqlite-e5c941b83b07a418748fd63870017d6ca67730f4.tar.gz sqlite-e5c941b83b07a418748fd63870017d6ca67730f4.zip |
Add more code to enforce the limits specified in limits.h. (CVS 3946)
FossilOrigin-Name: c59d436095b5258d7132a432c0cb6cd5a7990d85
Diffstat (limited to 'src/tokenize.c')
-rw-r--r-- | src/tokenize.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/tokenize.c b/src/tokenize.c index 4e915bdf8..86c286c3d 100644 --- a/src/tokenize.c +++ b/src/tokenize.c @@ -15,7 +15,7 @@ ** individual tokens and sends those tokens one-by-one over to the ** parser for analysis. ** -** $Id: tokenize.c,v 1.126 2007/04/16 15:06:25 danielk1977 Exp $ +** $Id: tokenize.c,v 1.127 2007/05/08 13:58:28 drh Exp $ */ #include "sqliteInt.h" #include "os.h" @@ -421,6 +421,10 @@ int sqlite3RunParser(Parse *pParse, const char *zSql, char **pzErrMsg){ assert( pParse->sLastToken.dyn==0 ); pParse->sLastToken.n = getToken((unsigned char*)&zSql[i],&tokenType); i += pParse->sLastToken.n; + if( i>SQLITE_MAX_SQL_LENGTH ){ + pParse->rc = SQLITE_TOOBIG; + break; + } switch( tokenType ){ case TK_SPACE: case TK_COMMENT: { |