summaryrefslogtreecommitdiff
path: root/ext/sqlite/libsqlite/src/vdbeInt.h
diff options
context:
space:
mode:
authorIlia Alshanetsky <iliaa@php.net>2004-01-14 17:08:27 +0000
committerIlia Alshanetsky <iliaa@php.net>2004-01-14 17:08:27 +0000
commit6e350b553bedcfe4694a7118d8b44f80266201f4 (patch)
tree8be4ab1f00c7a24b19cacbd527d83b6ec61aa265 /ext/sqlite/libsqlite/src/vdbeInt.h
parent49b698c67ed0f8408c54d0754672e552376b7554 (diff)
downloadphp-git-6e350b553bedcfe4694a7118d8b44f80266201f4.tar.gz
Upgraded bundled libsqlite to 2.8.11 (fixed critical bug of *NIX systems).
Diffstat (limited to 'ext/sqlite/libsqlite/src/vdbeInt.h')
-rw-r--r--ext/sqlite/libsqlite/src/vdbeInt.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/ext/sqlite/libsqlite/src/vdbeInt.h b/ext/sqlite/libsqlite/src/vdbeInt.h
index d168387cd2..d58523ad28 100644
--- a/ext/sqlite/libsqlite/src/vdbeInt.h
+++ b/ext/sqlite/libsqlite/src/vdbeInt.h
@@ -17,6 +17,15 @@
*/
/*
+** When converting from the native format to the key format and back
+** again, in addition to changing the byte order we invert the high-order
+** bit of the most significant byte. This causes negative numbers to
+** sort before positive numbers in the memcmp() function.
+*/
+#define keyToInt(X) (sqliteVdbeByteSwap(X) ^ 0x80000000)
+#define intToKey(X) (sqliteVdbeByteSwap((X) ^ 0x80000000))
+
+/*
** The makefile scans this source file and creates the following
** array of string constants which are the names of all VDBE opcodes.
** This array is defined in a separate source code file named opcode.c
@@ -62,6 +71,8 @@ struct Cursor {
Bool nullRow; /* True if pointing to a row with no data */
Bool nextRowidValid; /* True if the nextRowid field is valid */
Bool pseudoTable; /* This is a NEW or OLD pseudo-tables of a trigger */
+ Bool deferredMoveto; /* A call to sqliteBtreeMoveto() is needed */
+ int movetoTarget; /* Argument to the deferred sqliteBtreeMoveto() */
Btree *pBt; /* Separate file holding temporary table */
int nData; /* Number of bytes in pData */
char *pData; /* Data for a NEW or OLD pseudo-table */
@@ -294,6 +305,8 @@ void sqliteVdbeSorterReset(Vdbe*);
void sqliteVdbeAggReset(Agg*);
void sqliteVdbeKeylistFree(Keylist*);
void sqliteVdbePopStack(Vdbe*,int);
+int sqliteVdbeCursorMoveto(Cursor*);
+int sqliteVdbeByteSwap(int);
#if !defined(NDEBUG) || defined(VDBE_PROFILE)
void sqliteVdbePrintOp(FILE*, int, Op*);
#endif