aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authordrh <drh@noemail.net>2017-07-11 17:28:27 +0000
committerdrh <drh@noemail.net>2017-07-11 17:28:27 +0000
commitdb3e0456d28ae7d36a257a132aaaab55b72e329a (patch)
treedcaedda3b0e58755d4696f23a4d59c2b3bcfcf4c /src
parentb7bfc3b12d55e6c8762037a4d6622c40185b2979 (diff)
downloadsqlite-db3e0456d28ae7d36a257a132aaaab55b72e329a.tar.gz
sqlite-db3e0456d28ae7d36a257a132aaaab55b72e329a.zip
Enabled the new sqlite3_prepare_v3() and sqlite3_prepare16_v3() interfaces
for loadable extensions. FossilOrigin-Name: b9debd626a68c4bc0e5fdeb8d15a991cfe6f62f9586eda76c07a1c18e498e3c2
Diffstat (limited to 'src')
-rw-r--r--src/loadext.c5
-rw-r--r--src/sqlite3ext.h8
2 files changed, 12 insertions, 1 deletions
diff --git a/src/loadext.c b/src/loadext.c
index 1fee4260a..47efc11f0 100644
--- a/src/loadext.c
+++ b/src/loadext.c
@@ -423,7 +423,10 @@ static const sqlite3_api_routines sqlite3Apis = {
sqlite3_trace_v2,
sqlite3_expanded_sql,
/* Version 3.18.0 and later */
- sqlite3_set_last_insert_rowid
+ sqlite3_set_last_insert_rowid,
+ /* Version 3.20.0 and later */
+ sqlite3_prepare_v3,
+ sqlite3_prepare16_v3
};
/*
diff --git a/src/sqlite3ext.h b/src/sqlite3ext.h
index f25084a1f..06b5e5b71 100644
--- a/src/sqlite3ext.h
+++ b/src/sqlite3ext.h
@@ -284,6 +284,11 @@ struct sqlite3_api_routines {
char *(*expanded_sql)(sqlite3_stmt*);
/* Version 3.18.0 and later */
void (*set_last_insert_rowid)(sqlite3*,sqlite3_int64);
+ /* Version 3.20.0 and later */
+ int (*prepare_v3)(sqlite3*,const char*,int,unsigned int,
+ sqlite3_stmt**,const char**);
+ int (*prepare16_v3)(sqlite3*,const void*,int,unsigned int,
+ sqlite3_stmt**,const void**);
};
/*
@@ -544,6 +549,9 @@ typedef int (*sqlite3_loadext_entry)(
#define sqlite3_expanded_sql sqlite3_api->expanded_sql
/* Version 3.18.0 and later */
#define sqlite3_set_last_insert_rowid sqlite3_api->set_last_insert_rowid
+/* Version 3.20.0 and later */
+#define sqlite3_prepare_v3 sqlite3_api->prepare_v3
+#define sqlite3_prepare16_v3 sqlite3_api->prepare16_v3
#endif /* !defined(SQLITE_CORE) && !defined(SQLITE_OMIT_LOAD_EXTENSION) */
#if !defined(SQLITE_CORE) && !defined(SQLITE_OMIT_LOAD_EXTENSION)