From: stephan Date: Sun, 26 Jul 2026 15:47:56 +0000 (+0000) Subject: Remove some extraneous I/O in kvvfs. Reported off-list by Jure Rotar. X-Git-Url: http://git.ipfire.org/gitweb/index.cgi?a=commitdiff_plain;h=bdde38eb0c5d521e7d07ccff25fd5a824a6c02cc;p=thirdparty%2Fsqlite.git Remove some extraneous I/O in kvvfs. Reported off-list by Jure Rotar. FossilOrigin-Name: ce09bfe406728312761a9f227b3f82cbee7cc176dddac1a499e10480a7ee2c1c --- diff --git a/ext/wasm/api/sqlite3-vfs-kvvfs.c-pp.js b/ext/wasm/api/sqlite3-vfs-kvvfs.c-pp.js index dd54c960b5..053c22ad72 100644 --- a/ext/wasm/api/sqlite3-vfs-kvvfs.c-pp.js +++ b/ext/wasm/api/sqlite3-vfs-kvvfs.c-pp.js @@ -753,15 +753,11 @@ globalThis.sqlite3ApiBootstrap.initializers.push(function(sqlite3){ wasm.cstrToJs(zKey), nV, jV, store); } const zV = cache.memBuffer(0); - //if( !zV ) return -3 /*OOM*/; const heap = wasm.heap8(); - let i; - for(i = 0; i < nV; ++i){ - heap[wasm.ptr.add(zV,i)] = jV.codePointAt(i) & 0xFF; + const nZBuf = wasm.ptr.coerce(zBuf); + for (let i = 0; i < nV; ++i) { + heap[wasm.ptr.add(nZBuf, i)] = jV.codePointAt(i) & 0xff; } - heap.copyWithin( - Number(zBuf), Number(zV), wasm.ptr.addn(zV, i) - ); heap[wasm.ptr.add(zBuf, nV)] = 0; return nBuf; }catch(e){ diff --git a/manifest b/manifest index 9393c1668f..c53e46ca3a 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Fix\sa\sJS\scontainer\sAPI\smisuse\sin\ssqlite3.oo1.DB.close()\swhich\scaused\sits\sfallback\scleanup\sof\sstill-open\sstatements\sto\snot\sactually\sdo\sso.\sReported\soff-list\sby\sJure\sRotar. -D 2026-07-26T15:39:18.617 +C Remove\ssome\sextraneous\sI/O\sin\skvvfs.\sReported\soff-list\sby\sJure\sRotar. +D 2026-07-26T15:47:56.803 F .fossil-settings/binary-glob 61195414528fb3ea9693577e1980230d78a1f8b0a54c78cf1b9b24d0a409ed6a x F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea @@ -606,7 +606,7 @@ F ext/wasm/api/sqlite3-api-worker1.c-pp.js eee70a9962c02d86d2332f2432e257ccdf5eb F ext/wasm/api/sqlite3-license-version-header.js 98d90255a12d02214db634e041c8e7f2f133d9361a8ebf000ba9c9af4c6761cc F ext/wasm/api/sqlite3-opfs-async-proxy.c-pp.js 25e31482b04293a33d7599f1459eb552b3eb36ca10c02c816122d3308bf80cb2 F ext/wasm/api/sqlite3-vfs-helper.c-pp.js 3f828cc66758acb40e9c5b4dcfd87fd478a14c8fb7f0630264e6c7fa0e57515d -F ext/wasm/api/sqlite3-vfs-kvvfs.c-pp.js 2d41f4d4ddf4cfd4e46717dba2ce3a92e72f28061db3dc690acfe8cb9ff8e447 +F ext/wasm/api/sqlite3-vfs-kvvfs.c-pp.js ca52d99e311792cff99f60428336c9a1db7e5c3f308ef39013c6f2b3702f3796 F ext/wasm/api/sqlite3-vfs-opfs-sahpool.c-pp.js 91f864f95c7195378b968cd4612e54b294e2e0445125a15f8626139de39c0462 F ext/wasm/api/sqlite3-vfs-opfs-wl.c-pp.js 60fa106fc11d31adb1773ac16dd60fc9335a35496b0ca7bab8b4032cb61a441b F ext/wasm/api/sqlite3-vfs-opfs.c-pp.js 5dd8410121acf623ce53005a4aab2c7b2b7f5d1ad072f69ebc208882bc7b7236 @@ -2217,8 +2217,8 @@ F tool/warnings-clang.sh bbf6a1e685e534c92ec2bfba5b1745f34fb6f0bc2a362850723a9ee F tool/warnings.sh a554d13f6e5cf3760f041b87939e3d616ec6961859c3245e8ef701d1eafc2ca2 F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f F tool/winmain.c 00c8fb88e365c9017db14c73d3c78af62194d9644feaf60e220ab0f411f3604c -P 2f0bde4bc89c2b088c8f821719d7e457d9129c0493032152b8f4472673973e58 -R 24e3af28f7df2101dfd70665778ec069 +P d5d8ee76d337820f765cea7b279f2e5644a24d4f0e76d53b35b4d52277edb767 +R 09673fe5ce538ba50b596105ca5d6333 U stephan -Z 376a7e3b8fd83eb5eeadeb11eea780ac +Z 9ec8fb24077e6b8f1ff65887c16ad165 # Remove this line to create a well-formed Fossil manifest. diff --git a/manifest.uuid b/manifest.uuid index ed96bb7fd4..c4d5030c64 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -d5d8ee76d337820f765cea7b279f2e5644a24d4f0e76d53b35b4d52277edb767 +ce09bfe406728312761a9f227b3f82cbee7cc176dddac1a499e10480a7ee2c1c