aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorstephan <stephan@noemail.net>2023-01-02 20:52:46 +0000
committerstephan <stephan@noemail.net>2023-01-02 20:52:46 +0000
commite364a9da72604650a54da42d59b0bb340a72fe1c (patch)
treeb63f73424022b2438e40bd7236d3be0b37301610
parentb1cc895c920a2f5985ce1b5f0d7fb1012c5b097f (diff)
downloadsqlite-e364a9da72604650a54da42d59b0bb340a72fe1c.tar.gz
sqlite-e364a9da72604650a54da42d59b0bb340a72fe1c.zip
Add some docs explaining a particular piece of [ae0196d86ee8]. No code changes.
FossilOrigin-Name: 7f96803c1cbd0633367173ab0a67a8b301b9e0746e460c50d506b536c15db0a0
-rw-r--r--ext/wasm/api/sqlite3-wasm.c21
-rw-r--r--manifest12
-rw-r--r--manifest.uuid2
3 files changed, 28 insertions, 7 deletions
diff --git a/ext/wasm/api/sqlite3-wasm.c b/ext/wasm/api/sqlite3-wasm.c
index 2b912c1dc..ba629481c 100644
--- a/ext/wasm/api/sqlite3-wasm.c
+++ b/ext/wasm/api/sqlite3-wasm.c
@@ -1597,6 +1597,27 @@ int sqlite3_wasm_config_j(int op, sqlite3_int64 arg){
return sqlite3_config(op, arg);
}
+/*
+** This function is NOT part of the sqlite3 public API. It is strictly
+** for use by the sqlite project's own JS/WASM bindings.
+**
+** Returns a pointer to sqlite3_free(). In compliant browsers the
+** return value, when passed to sqlite3.wasm.exports.functionEntry(),
+** must resolve to the same function as
+** sqlite3.wasm.exports.sqlite3_free. i.e. from a dev console where
+** sqlite3 is exported globally, the following must be true:
+**
+** ```
+** sqlite3.wasm.functionEntry(
+** sqlite3.wasm.exports.sqlite3_wasm_ptr_to_sqlite3_free()
+** ) === sqlite3.wasm.exports.sqlite3_free
+** ```
+**
+** Using a function to return this pointer, as opposed to exporting it
+** via sqlite3_wasm_enum_json(), is an attempt to work around a
+** Safari-specific quirk covered at
+** https://sqlite.org/forum/info/e5b20e1feb37a19a.
+**/
SQLITE_WASM_KEEP
void * sqlite3_wasm_ptr_to_sqlite3_free(void){
return (void*)sqlite3_free;
diff --git a/manifest b/manifest
index 3512765ec..8ebd71ac2 100644
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Another\sreformulation\sof\sSQLITE_WASM_DEALLOC\sto\sattempt\sto\swork\saround\sa\sSafari-specific\squirk\sreported\sin\s[forum:5489305f601b8c3f|forum\spost\s5489305f601b8c3f].
-D 2023-01-02T20:07:30.050
+C Add\ssome\sdocs\sexplaining\sa\sparticular\spiece\sof\s[ae0196d86ee8].\sNo\scode\schanges.
+D 2023-01-02T20:52:46.522
F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724
@@ -512,7 +512,7 @@ F ext/wasm/api/sqlite3-opfs-async-proxy.js 7795b84b66a7a8dedc791340709b310bb497c
F ext/wasm/api/sqlite3-v-helper.js 6f6c3e390a72e08b0a5b16a0d567d7af3c04d172831853a29d72a6f1dd40ff24
F ext/wasm/api/sqlite3-vfs-opfs.c-pp.js 66daf6fb6843bea615fe193109e1542efbeca24f560ee9da63375a910bb48115
F ext/wasm/api/sqlite3-wasi.h 25356084cfe0d40458a902afb465df8c21fc4152c1d0a59b563a3fba59a068f9
-F ext/wasm/api/sqlite3-wasm.c 0359e5c2d57da92f9c01e4f6bb9ece3335bbd310f4d27e90317c16c72ad0d6aa
+F ext/wasm/api/sqlite3-wasm.c ec402680e315b773b085458aba388c9c882b726f99bc56562d512de764c40daa
F ext/wasm/api/sqlite3-worker1-promiser.js 0c7a9826dbf82a5ed4e4f7bf7816e825a52aff253afbf3350431f5773faf0e4b
F ext/wasm/api/sqlite3-worker1.js 9d3d3dfc70bff8998c1d8ff6d881cf1c3d52468d635417f02796151fe6b31cd7
F ext/wasm/batch-runner.html 4deeed44fe41496dc6898d9fb17938ea3291f40f4bfb977e29d0cef96fbbe4c8
@@ -2067,8 +2067,8 @@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a91a7acc6293828957a386a8a93
F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc
F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e
F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0
-P 688c5c13d156f987b895df1d5a5b770616b0d9caec4726e03ba122eb8539e7b2
-R 2fbfa799ec23ba185eb3b11a27a6ffb9
+P ae0196d86ee8ca424b5ef5a43c32988f4ab5131ea146669bc1467e31a2384901
+R 468770ff1d6e218ca1a386beedb2179e
U stephan
-Z 1fab25163b09cff749fb3d6a4a1d3b43
+Z d6968ffff8c57917bdc920258d7e0b7f
# Remove this line to create a well-formed Fossil manifest.
diff --git a/manifest.uuid b/manifest.uuid
index e33cfa26b..2e0f69a56 100644
--- a/manifest.uuid
+++ b/manifest.uuid
@@ -1 +1 @@
-ae0196d86ee8ca424b5ef5a43c32988f4ab5131ea146669bc1467e31a2384901 \ No newline at end of file
+7f96803c1cbd0633367173ab0a67a8b301b9e0746e460c50d506b536c15db0a0 \ No newline at end of file