summaryrefslogtreecommitdiffstats
path: root/lib/libsqlite3/src/prepare.c
diff options
context:
space:
mode:
authorjturner <jturner@openbsd.org>2014-03-24 01:37:28 +0000
committerjturner <jturner@openbsd.org>2014-03-24 01:37:28 +0000
commit29ebcee2452a131560f5220abaf585648f84ce40 (patch)
tree844ef4fe135beff619b9e7b632f3b6722d6367e4 /lib/libsqlite3/src/prepare.c
parentannotate some packed structures with the alignment the hardware (diff)
downloadwireguard-openbsd-29ebcee2452a131560f5220abaf585648f84ce40.tar.xz
wireguard-openbsd-29ebcee2452a131560f5220abaf585648f84ce40.zip
Update sqlite to 3.8.4. A list of changes are available here:
http://sqlite.org/changes.html. Tested in a bulk and ok landry@
Diffstat (limited to 'lib/libsqlite3/src/prepare.c')
-rw-r--r--lib/libsqlite3/src/prepare.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/lib/libsqlite3/src/prepare.c b/lib/libsqlite3/src/prepare.c
index cfc9c348551..c7ba53a1f50 100644
--- a/lib/libsqlite3/src/prepare.c
+++ b/lib/libsqlite3/src/prepare.c
@@ -525,6 +525,17 @@ int sqlite3SchemaToIndex(sqlite3 *db, Schema *pSchema){
}
/*
+** Free all memory allocations in the pParse object
+*/
+void sqlite3ParserReset(Parse *pParse){
+ if( pParse ){
+ sqlite3 *db = pParse->db;
+ sqlite3DbFree(db, pParse->aLabel);
+ sqlite3ExprListDelete(db, pParse->pConstExpr);
+ }
+}
+
+/*
** Compile the UTF-8 encoded SQL statement zSql into a statement handle.
*/
static int sqlite3Prepare(
@@ -681,6 +692,7 @@ static int sqlite3Prepare(
end_prepare:
+ sqlite3ParserReset(pParse);
sqlite3StackFree(db, pParse);
rc = sqlite3ApiExit(db, rc);
assert( (rc&db->errMask)==rc );