From: drh Date: Sat, 25 Mar 2017 19:16:41 +0000 (+0000) Subject: Add the new sqlite3_set_last_insert_rowid() interface to the extension X-Git-Tag: version-3.18.0~1 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=0d8d9c9effb312c71998446df64bcc133031acde;p=thirdparty%2Fsqlite.git Add the new sqlite3_set_last_insert_rowid() interface to the extension loader thunk. FossilOrigin-Name: 8469fc0d48d6af0accef9b8a84e08ad2ca32351907510d177b4ca4815c1ea7cb --- diff --git a/manifest b/manifest index dbc499389a..65dae1b276 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Do\snot\srun\stests\sfor\s".dump\s--preserve-rowids"\swhen\stesting\nSQLITE_OMIT_VIRTUALTABLE\sbuilds. -D 2017-03-25T18:31:42.178 +C Add\sthe\snew\ssqlite3_set_last_insert_rowid()\sinterface\sto\sthe\sextension\nloader\sthunk. +D 2017-03-25T19:16:41.259 F Makefile.in 1cc758ce3374a32425e4d130c2fe7b026b20de5b8843243de75f087c0a2661fb F Makefile.linux-gcc 7bc79876b875010e8c8f9502eb935ca92aa3c434 F Makefile.msc 1faf9f06aadc9284c212dea7bbc7c0dea7e8337f0287c81001eff500912c790a @@ -365,7 +365,7 @@ F src/hwtime.h 747c1bbe9df21a92e9c50f3bbec1de841dc5e5da F src/in-operator.md 10cd8f4bcd225a32518407c2fb2484089112fd71 F src/insert.c d4bb3a135948553d18cf992f76f7ed7b18aa0327f250607b5a6671e55d9947d5 F src/legacy.c e88ed13c2d531decde75d42c2e35623fb9ce3cb0 -F src/loadext.c a68d8d1d14cf7488bb29dc5311cb1ce9a4404258 +F src/loadext.c a72909474dadce771d3669bf84bf689424f6f87d471fee898589c3ef9b2acfd9 F src/main.c 158326243c5ddc8b98a1e983fa488650cf76d760 F src/malloc.c 89c98e3619d362dcffa5c1c639b364b65b474751 F src/mem0.c 6a55ebe57c46ca1a7d98da93aaa07f99f1059645 @@ -405,7 +405,7 @@ F src/select.c 2496d0cc6368dabe7ad2e4c7f5ed3ad9aa3b4d11cd90f33fa1d1ef72493f43aa F src/shell.c ceb2b2f1f958ea2c47a7f37972d0f715fbf9dcf6a34a5e98c886b85e3ce6a238 F src/sqlite.h.in 723107d97f2345a7c103632169dc61366121c4ab65d75a7d83c6dc0e5bbe5ca4 F src/sqlite3.rc 5121c9e10c3964d5755191c80dd1180c122fc3a8 -F src/sqlite3ext.h 8648034aa702469afb553231677306cc6492a1ae +F src/sqlite3ext.h 58fd0676d3111d02e62e5a35992a7d3da5d3f88753acc174f2d37b774fbbdd28 F src/sqliteInt.h a530e5baf5e559154d5c2e5cc57471bc780a7af4cd0a5d72750b1d850fef1e22 F src/sqliteLimit.h 1513bfb7b20378aa0041e7022d04acb73525de35b80b252f1b83fedb4de6a76b F src/status.c a9e66593dfb28a9e746cba7153f84d49c1ddc4b1 @@ -1569,7 +1569,7 @@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a91a7acc6293828957a386a8a93 F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0 -P bd5bbe4eece9051cc8c27d834d22fb243d34f261641984555d02a27b7038d4f6 -R 3c7487a050e499b6e6904332fc259f35 -U dan -Z 8bd1e4f61c15057f31029e76e86683dd +P 55df410b2cd27dc4c7670bcc1196fa3a0e9e601fc24c42e53d6b0a26ee3e4b45 +R e1b145e92e118b2bc2de7100fb7561b5 +U drh +Z e401f4d2ca1590406e5405bb5cd2850e diff --git a/manifest.uuid b/manifest.uuid index 7b58a3bd78..6ed302dbe3 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -55df410b2cd27dc4c7670bcc1196fa3a0e9e601fc24c42e53d6b0a26ee3e4b45 \ No newline at end of file +8469fc0d48d6af0accef9b8a84e08ad2ca32351907510d177b4ca4815c1ea7cb \ No newline at end of file diff --git a/src/loadext.c b/src/loadext.c index 3296be60dd..1fee4260ab 100644 --- a/src/loadext.c +++ b/src/loadext.c @@ -421,7 +421,9 @@ static const sqlite3_api_routines sqlite3Apis = { sqlite3_system_errno, /* Version 3.14.0 and later */ sqlite3_trace_v2, - sqlite3_expanded_sql + sqlite3_expanded_sql, + /* Version 3.18.0 and later */ + sqlite3_set_last_insert_rowid }; /* diff --git a/src/sqlite3ext.h b/src/sqlite3ext.h index ce87e74690..f25084a1f5 100644 --- a/src/sqlite3ext.h +++ b/src/sqlite3ext.h @@ -282,6 +282,8 @@ struct sqlite3_api_routines { /* Version 3.14.0 and later */ int (*trace_v2)(sqlite3*,unsigned,int(*)(unsigned,void*,void*,void*),void*); char *(*expanded_sql)(sqlite3_stmt*); + /* Version 3.18.0 and later */ + void (*set_last_insert_rowid)(sqlite3*,sqlite3_int64); }; /* @@ -540,6 +542,8 @@ typedef int (*sqlite3_loadext_entry)( /* Version 3.14.0 and later */ #define sqlite3_trace_v2 sqlite3_api->trace_v2 #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 #endif /* !defined(SQLITE_CORE) && !defined(SQLITE_OMIT_LOAD_EXTENSION) */ #if !defined(SQLITE_CORE) && !defined(SQLITE_OMIT_LOAD_EXTENSION)