diff options
author | drh <drh@noemail.net> | 2009-05-01 21:13:36 +0000 |
---|---|---|
committer | drh <drh@noemail.net> | 2009-05-01 21:13:36 +0000 |
commit | 24fb627afa360cc7efed23c6ddf1932a85c99b07 (patch) | |
tree | f3c7ecfe0f31f0ad33671e34bebe55f6fb36a3c1 /src/sqliteInt.h | |
parent | d51397a614dd2b5a20697e6084bc9eae260c49b1 (diff) | |
download | sqlite-24fb627afa360cc7efed23c6ddf1932a85c99b07.tar.gz sqlite-24fb627afa360cc7efed23c6ddf1932a85c99b07.zip |
Record within the Token structure itself whether or not the token has
been dequoted. This steals one bit from the length of a token and
thus limits the size of tokens to 1GiB. (CVS 6589)
FossilOrigin-Name: 12bcb03d9b9e1a31c1a3c67cbb4263cc0af2f3d0
Diffstat (limited to 'src/sqliteInt.h')
-rw-r--r-- | src/sqliteInt.h | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/src/sqliteInt.h b/src/sqliteInt.h index afdb4b3c9..488a0686e 100644 --- a/src/sqliteInt.h +++ b/src/sqliteInt.h @@ -11,7 +11,7 @@ ************************************************************************* ** Internal interface definitions for SQLite. ** -** @(#) $Id: sqliteInt.h,v 1.864 2009/04/30 12:25:10 drh Exp $ +** @(#) $Id: sqliteInt.h,v 1.865 2009/05/01 21:13:37 drh Exp $ */ #ifndef _SQLITEINT_H_ #define _SQLITEINT_H_ @@ -1354,8 +1354,9 @@ struct Index { */ struct Token { const unsigned char *z; /* Text of the token. Not NULL-terminated! */ - unsigned dyn : 1; /* True for malloced memory, false for static */ - unsigned n : 31; /* Number of characters in this token */ + unsigned dyn : 1; /* True for malloced memory, false for static */ + unsigned quoted : 1; /* True if token still has its quotes */ + unsigned n : 30; /* Number of characters in this token */ }; /* @@ -1517,7 +1518,7 @@ struct Expr { #define EP_Error 0x0008 /* Expression contains one or more errors */ #define EP_Distinct 0x0010 /* Aggregate function with DISTINCT keyword */ #define EP_VarSelect 0x0020 /* pSelect is correlated, not constant */ -#define EP_Dequoted 0x0040 /* True if the string has been dequoted */ +#define EP_DblQuoted 0x0040 /* token.z was originally in "..." */ #define EP_InfixFunc 0x0080 /* True for an infix function: LIKE, GLOB, etc */ #define EP_ExpCollate 0x0100 /* Collating sequence specified explicitly */ #define EP_AnyAff 0x0200 /* Can take a cached column of any affinity */ @@ -2360,8 +2361,7 @@ char *sqlite3MAppendf(sqlite3*,char*,const char*,...); void sqlite3SetString(char **, sqlite3*, const char*, ...); void sqlite3ErrorMsg(Parse*, const char*, ...); void sqlite3ErrorClear(Parse*); -void sqlite3Dequote(char*); -void sqlite3DequoteExpr(Expr*); +int sqlite3Dequote(char*); int sqlite3KeywordCode(const unsigned char*, int); int sqlite3RunParser(Parse*, const char*, char **); void sqlite3FinishCoding(Parse*); |