]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
When writing the filename header in a opfs-sahpool file, ensure that all remaining...
authorstephan <stephan@noemail.net>
Sun, 23 Jul 2023 22:14:41 +0000 (22:14 +0000)
committerstephan <stephan@noemail.net>
Sun, 23 Jul 2023 22:14:41 +0000 (22:14 +0000)
FossilOrigin-Name: c1b080e39397c983c13a5e79303223827de7b4946c18a79396851ec1814782f3

ext/wasm/api/sqlite3-vfs-opfs-sahpool.c-pp.js
manifest
manifest.uuid

index 28524b613c8596389fc13fb24defd88bcebff755..9bf1421a9f474520b767fa4cdab5773ae6d755f5 100644 (file)
@@ -654,10 +654,10 @@ globalThis.sqlite3ApiBootstrap.initializers.push(function(sqlite3){
     */
     setAssociatedPath(sah, path, flags){
       const enc = textEncoder.encodeInto(path, this.#apBody);
-      if(HEADER_MAX_PATH_SIZE <= enc.written){
+      if(HEADER_MAX_PATH_SIZE <= enc.written + 1/*NUL byte*/){
         toss("Path too long:",path);
       }
-
+      this.#apBody.fill(0, enc.written, HEADER_MAX_PATH_SIZE);
       this.#dvBody.setUint32(HEADER_OFFSET_FLAGS, flags);
 
       const digest = this.computeDigest(this.#apBody);
index af4dd71733e88de629f8e768483661d7421e0dcf..ef9ea0e9d6221f42853ff1b75b4a2147be7436af 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Add\sthe\sopfs-sahpool\ssqlite3_vfs\simplementation\sto\sJS,\soffering\san\salternative\sto\sthe\sother\sOPFS\sVFS\s(with\stradeoffs).
-D 2023-07-22T19:57:42.982
+C When\swriting\sthe\sfilename\sheader\sin\sa\sopfs-sahpool\sfile,\sensure\sthat\sall\sremaining\sbytes\sin\sthat\spart\sof\sthe\sheader\sare\szeroed\sout\sto\savoid\sthe\sdownstream\sproblems\sreported\sin\s[forum:d50ec48a293988a5|forum\spost\sd50ec48a293988a5].
+D 2023-07-23T22:14:41.081
 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
 F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724
@@ -502,7 +502,7 @@ F ext/wasm/api/sqlite3-api-worker1.js 9f32af64df1a031071912eea7a201557fe39b17386
 F ext/wasm/api/sqlite3-license-version-header.js 0c807a421f0187e778dc1078f10d2994b915123c1223fe752b60afdcd1263f89
 F ext/wasm/api/sqlite3-opfs-async-proxy.js 8cf8a897726f14071fae6be6648125162b256dfb4f96555b865dbb7a6b65e379
 F ext/wasm/api/sqlite3-v-helper.js 7daa0eab0a513a25b05e9abae7b5beaaa39209b3ed12f86aeae9ef8d2719ed25
-F ext/wasm/api/sqlite3-vfs-opfs-sahpool.c-pp.js bb99a931388966a032f635a0cc9cd72685e067f21b95b2a58a660c055020b739
+F ext/wasm/api/sqlite3-vfs-opfs-sahpool.c-pp.js 7931b50b63246a3d6b46a4c703c28820aa10c5b1ae7c0718e1f58dae2cf6db85
 F ext/wasm/api/sqlite3-vfs-opfs.c-pp.js e7a690e0e78ff4d563f2eca468f91db69f001ff4b79c6d2304cbb6f62dca437d
 F ext/wasm/api/sqlite3-wasm.c 8867f1d41c112fb4a2cfe22ff224eccaf309fcdea266cee0ec554f85db72ef0f
 F ext/wasm/api/sqlite3-worker1-promiser.c-pp.js bc06df0d599e625bde6a10a394e326dc68da9ff07fa5404354580f81566e591f
@@ -2044,9 +2044,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 931bccb0cc290b8bf3027641e7a7fac30e3244d7dc84aa9e38b24b7e9544ca06 74ad31e2908af8225b7aa527dbcd1877423d58163e365317a78453b31e322ea3
-R 00ca22e33a29604f58c1aae1d32cd34b
-T +closed 74ad31e2908af8225b7aa527dbcd1877423d58163e365317a78453b31e322ea3 Closed\sby\sintegrate-merge.
+P d2e602cda44bf35e76167143262b4f91826d25780d0e095e680a31d5dedb2018
+R 47af828f435c00e0fb124001796bea21
 U stephan
-Z bed86151ea151954dfefb0b67895169f
+Z 3f8f8cf2fbd99e80728947340dd883ad
 # Remove this line to create a well-formed Fossil manifest.
index 49bce2c199b3791b8a4a1ac8d62d70ed397c5063..9921927a14a08cbb5cf29a7833dc68ddd6ca5e44 100644 (file)
@@ -1 +1 @@
-d2e602cda44bf35e76167143262b4f91826d25780d0e095e680a31d5dedb2018
\ No newline at end of file
+c1b080e39397c983c13a5e79303223827de7b4946c18a79396851ec1814782f3
\ No newline at end of file