From 34b92b19f3443c60669cd8a4d3239c9b9f84d3f0 Mon Sep 17 00:00:00 2001 From: stephan Date: Wed, 26 Oct 2022 11:27:33 +0000 Subject: [PATCH] Replace the newly-removed oo1.DB.getFilename() with DB.dbFilename() with the hope that the distinction from the dbInstance.filename property is clearer. FossilOrigin-Name: 0b80543d75504c733b73b32f73b96074a4b0cebad64e47032926a3fefee41726 --- ext/wasm/api/sqlite3-api-oo1.js | 9 +++++++++ ext/wasm/tester1.js | 10 ++++++---- manifest | 14 +++++++------- manifest.uuid | 2 +- 4 files changed, 23 insertions(+), 12 deletions(-) diff --git a/ext/wasm/api/sqlite3-api-oo1.js b/ext/wasm/api/sqlite3-api-oo1.js index 05fc403710..0a6b48b6e7 100644 --- a/ext/wasm/api/sqlite3-api-oo1.js +++ b/ext/wasm/api/sqlite3-api-oo1.js @@ -514,6 +514,15 @@ self.sqlite3ApiBootstrap.initializers.push(function(sqlite3){ : capi.sqlite3_changes(p); } }, + /** + Similar to the this.filename but returns the + sqlite3_db_filename() value for the given database name, + defaulting to "main". The argument may be either a JS string + or a pointer to a WASM-allocated C-string. + */ + dbFilename: function(dbName='main'){ + return capi.sqlite3_db_filename(affirmDbOpen(this).pointer, dbName); + }, /** Returns the name of the given 0-based db number, as documented for sqlite3_db_name(). diff --git a/ext/wasm/tester1.js b/ext/wasm/tester1.js index 064909f870..4a6074d91b 100644 --- a/ext/wasm/tester1.js +++ b/ext/wasm/tester1.js @@ -1059,16 +1059,19 @@ //////////////////////////////////////////////////////////////////////// T.g('sqlite3.oo1') .t('Create db', function(sqlite3){ - const db = this.db = new sqlite3.oo1.DB(); + const dbFile = '/tester1.db'; + sqlite3.capi.wasm.sqlite3_wasm_vfs_unlink(0, dbFile); + const db = this.db = new sqlite3.oo1.DB(dbFile); T.assert(Number.isInteger(db.pointer)). mustThrowMatching(()=>db.pointer=1, /read-only/). assert(0===sqlite3.capi.sqlite3_extended_result_codes(db.pointer,1)). assert('main'===db.dbName(0)); - // Custom db error message handling via sqlite3_prepare_v2/v3() let rc = capi.sqlite3_prepare_v3(db.pointer, {/*invalid*/}, -1, 0, null, null); T.assert(capi.SQLITE_MISUSE === rc) - .assert(0 === capi.sqlite3_errmsg(db.pointer).indexOf("Invalid SQL")); + .assert(0 === capi.sqlite3_errmsg(db.pointer).indexOf("Invalid SQL")) + .assert(dbFile === db.dbFilename()) + .assert(!db.dbFilename('nope')); }) //////////////////////////////////////////////////////////////////// @@ -1146,7 +1149,6 @@ .assert(pVfsDb > 0) .assert(pVfsMem !== pVfsDflt /* memdb lives on top of the default vfs */) - .assert(':memory:' === db.filename) .assert(pVfsDb === pVfsDflt || pVfsdb === pVfsMem) ; /*const vMem = new capi.sqlite3_vfs(pVfsMem), diff --git a/manifest b/manifest index 6385e1e028..b4ef9da2db 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Remove\soo1.DB.hasFilename()\sand\sgetFilename(),\sas\sthey\sare\sunnecessary. -D 2022-10-26T11:12:14.318 +C Replace\sthe\snewly-removed\soo1.DB.getFilename()\swith\sDB.dbFilename()\swith\sthe\shope\sthat\sthe\sdistinction\sfrom\sthe\sdbInstance.filename\sproperty\sis\sclearer. +D 2022-10-26T11:27:33.666 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724 @@ -485,7 +485,7 @@ F ext/wasm/api/post-js-header.js 2e5c886398013ba2af88028ecbced1e4b22dc96a86467f1 F ext/wasm/api/pre-js.js 151e0616614a49f3db19ed544fa13b38c87c108959fbcd4029ea8399a562d94f F ext/wasm/api/sqlite3-api-cleanup.js 4d07a7524dc9b7b050acfde57163e839243ad2383bd7ee0de0178b1b3e988588 F ext/wasm/api/sqlite3-api-glue.js 6e4e472eb5afc732a695cd7c5ded6dee6ef8b480e61aa0d648a3fc9033c84745 -F ext/wasm/api/sqlite3-api-oo1.js 06e168af4c03b7c41f3a384e99714e8180b2feda475b71bc1682756ed1fb7424 +F ext/wasm/api/sqlite3-api-oo1.js 38004e18001396c078124769e14737a0ff703f98317279734020121af72efdd5 F ext/wasm/api/sqlite3-api-opfs.js 62da8b7cac30d4e7bb940762d2ac948b0aeb89704a5a290b74eb268ecbd1a64e F ext/wasm/api/sqlite3-api-prologue.js fa00d55f927e5a4ec51cf2c80f6f0eaed2f4f5774341ecf3d63a0ea4c738f8f5 F ext/wasm/api/sqlite3-api-worker1.js b2d650514ccc75f80dff666fd3ee68dc8fb4137bcd01caac2c62ff93a7ebf638 @@ -533,7 +533,7 @@ F ext/wasm/test-opfs-vfs.html 1f2d672f3f3fce810dfd48a8d56914aba22e45c6834e262555 F ext/wasm/test-opfs-vfs.js 48fc59110e8775bb43c9be25b6d634fc07ebadab7da8fbd44889e8129c6e2548 F ext/wasm/tester1-worker.html d02b9d38876b023854cf8955e77a40912f7e516956b4dbe1ec7f215faac273ee F ext/wasm/tester1.html c6c47e5a8071eb09cb1301104435c8e44fbb5719c92411f5b2384a461f9793c5 -F ext/wasm/tester1.js 12741d4ff6015fc14fa9a397e6f9130bbda699067bbceca23d5a228138271735 +F ext/wasm/tester1.js 21dad63165954a8a28dfa8eeab68a4881eb1d9b5c6bc9f2c83aa3ceea8c41fee F ext/wasm/version-info.c 3b36468a90faf1bbd59c65fd0eb66522d9f941eedd364fabccd72273503ae7d5 F ext/wasm/wasmfs.make ee0004813e16c283ff633e08b482008d56adf9b7d42f6c5612f7ab002b924f69 F install-sh 9d4de14ab9fb0facae2f48780b874848cbf2f895 x @@ -2037,8 +2037,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 3dfdfb3f12edb3f4267942598efd05d573e13b7c5d6cdbc3404373f41b8993dd -R df51a6d29b4944ae600f13957da052ce +P 75c546b982024bf2b527c85271111d54158cb010867f6e29fc89e86cc8457cc5 +R be623a8f6f7c8b5e05b25a56c6af0f35 U stephan -Z 781ef648a1949ab8c3f9ac5d81d120d1 +Z 1a485f2ae92bc65c3a772e74dd0aa397 # Remove this line to create a well-formed Fossil manifest. diff --git a/manifest.uuid b/manifest.uuid index 3be00156ea..7b3b3f9bca 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -75c546b982024bf2b527c85271111d54158cb010867f6e29fc89e86cc8457cc5 \ No newline at end of file +0b80543d75504c733b73b32f73b96074a4b0cebad64e47032926a3fefee41726 \ No newline at end of file