mirror of
https://github.com/sqlite/sqlite.git
synced 2025-07-29 08:01:23 +03:00
Globally replace '' with "" for empty JS strings to please C preprocessor.
FossilOrigin-Name: e92e1f42bef94a1df29f66b4111ebfde93eba3759bc5d5a9c95f714508851346
This commit is contained in:
@ -141,7 +141,7 @@ self.sqlite3ApiBootstrap.initializers.push(function(sqlite3){
|
|||||||
const __dbArgcMismatch = (pDb,f,n)=>{
|
const __dbArgcMismatch = (pDb,f,n)=>{
|
||||||
return sqlite3.util.sqlite3_wasm_db_error(pDb, capi.SQLITE_MISUSE,
|
return sqlite3.util.sqlite3_wasm_db_error(pDb, capi.SQLITE_MISUSE,
|
||||||
f+"() requires "+n+" argument"+
|
f+"() requires "+n+" argument"+
|
||||||
(1===n?'':'s')+".");
|
(1===n?"":'s')+".");
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -158,7 +158,7 @@ self.sqlite3ApiBootstrap.initializers.push(function(sqlite3){
|
|||||||
n = v.byteLength;
|
n = v.byteLength;
|
||||||
v = util.typedArrayToString(v);
|
v = util.typedArrayToString(v);
|
||||||
}else if(Array.isArray(v)){
|
}else if(Array.isArray(v)){
|
||||||
v = v.join('');
|
v = v.join("");
|
||||||
n = -1;
|
n = -1;
|
||||||
}
|
}
|
||||||
return [v, n];
|
return [v, n];
|
||||||
|
@ -370,14 +370,14 @@ self.sqlite3ApiBootstrap = function sqlite3ApiBootstrap(
|
|||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
If v is-a Array, its join('') result is returned. If
|
If v is-a Array, its join("") result is returned. If
|
||||||
isSQLableTypedArray(v) is true then typedArrayToString(v) is
|
isSQLableTypedArray(v) is true then typedArrayToString(v) is
|
||||||
returned. If it looks like a WASM pointer, wasm.cstringToJs(v) is
|
returned. If it looks like a WASM pointer, wasm.cstringToJs(v) is
|
||||||
returned. Else v is returned as-is.
|
returned. Else v is returned as-is.
|
||||||
*/
|
*/
|
||||||
const flexibleString = function(v){
|
const flexibleString = function(v){
|
||||||
if(isSQLableTypedArray(v)) return typedArrayToString(v);
|
if(isSQLableTypedArray(v)) return typedArrayToString(v);
|
||||||
else if(Array.isArray(v)) return v.join('');
|
else if(Array.isArray(v)) return v.join("");
|
||||||
else if(wasm.isPtr(v)) v = wasm.cstringToJs(v);
|
else if(wasm.isPtr(v)) v = wasm.cstringToJs(v);
|
||||||
return v;
|
return v;
|
||||||
};
|
};
|
||||||
@ -1333,21 +1333,21 @@ self.sqlite3ApiBootstrap = function sqlite3ApiBootstrap(
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
Internal helper for sqlite3_js_kvvfs_clear() and friends.
|
Internal helper for sqlite3_js_kvvfs_clear() and friends.
|
||||||
Its argument should be one of ('local','session','').
|
Its argument should be one of ('local','session',"").
|
||||||
*/
|
*/
|
||||||
const __kvvfsInfo = function(which){
|
const __kvvfsInfo = function(which){
|
||||||
const rc = Object.create(null);
|
const rc = Object.create(null);
|
||||||
rc.prefix = 'kvvfs-'+which;
|
rc.prefix = 'kvvfs-'+which;
|
||||||
rc.stores = [];
|
rc.stores = [];
|
||||||
if('session'===which || ''===which) rc.stores.push(self.sessionStorage);
|
if('session'===which || ""===which) rc.stores.push(self.sessionStorage);
|
||||||
if('local'===which || ''===which) rc.stores.push(self.localStorage);
|
if('local'===which || ""===which) rc.stores.push(self.localStorage);
|
||||||
return rc;
|
return rc;
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Clears all storage used by the kvvfs DB backend, deleting any
|
Clears all storage used by the kvvfs DB backend, deleting any
|
||||||
DB(s) stored there. Its argument must be either 'session',
|
DB(s) stored there. Its argument must be either 'session',
|
||||||
'local', or ''. In the first two cases, only sessionStorage
|
'local', or "". In the first two cases, only sessionStorage
|
||||||
resp. localStorage is cleared. If it's an empty string (the
|
resp. localStorage is cleared. If it's an empty string (the
|
||||||
default) then both are cleared. Only storage keys which match
|
default) then both are cleared. Only storage keys which match
|
||||||
the pattern used by kvvfs are cleared: any other client-side
|
the pattern used by kvvfs are cleared: any other client-side
|
||||||
@ -1357,7 +1357,7 @@ self.sqlite3ApiBootstrap = function sqlite3ApiBootstrap(
|
|||||||
|
|
||||||
Returns the number of entries cleared.
|
Returns the number of entries cleared.
|
||||||
*/
|
*/
|
||||||
capi.sqlite3_js_kvvfs_clear = function(which=''){
|
capi.sqlite3_js_kvvfs_clear = function(which=""){
|
||||||
let rc = 0;
|
let rc = 0;
|
||||||
const kvinfo = __kvvfsInfo(which);
|
const kvinfo = __kvvfsInfo(which);
|
||||||
kvinfo.stores.forEach((s)=>{
|
kvinfo.stores.forEach((s)=>{
|
||||||
@ -1377,7 +1377,7 @@ self.sqlite3ApiBootstrap = function sqlite3ApiBootstrap(
|
|||||||
This routine guesses the approximate amount of
|
This routine guesses the approximate amount of
|
||||||
window.localStorage and/or window.sessionStorage in use by the
|
window.localStorage and/or window.sessionStorage in use by the
|
||||||
kvvfs database backend. Its argument must be one of
|
kvvfs database backend. Its argument must be one of
|
||||||
('session', 'local', ''). In the first two cases, only
|
('session', 'local', ""). In the first two cases, only
|
||||||
sessionStorage resp. localStorage is counted. If it's an empty
|
sessionStorage resp. localStorage is counted. If it's an empty
|
||||||
string (the default) then both are counted. Only storage keys
|
string (the default) then both are counted. Only storage keys
|
||||||
which match the pattern used by kvvfs are counted. The returned
|
which match the pattern used by kvvfs are counted. The returned
|
||||||
@ -1390,7 +1390,7 @@ self.sqlite3ApiBootstrap = function sqlite3ApiBootstrap(
|
|||||||
those limits are unspecified and may include per-entry
|
those limits are unspecified and may include per-entry
|
||||||
overhead invisible to clients.
|
overhead invisible to clients.
|
||||||
*/
|
*/
|
||||||
capi.sqlite3_js_kvvfs_size = function(which=''){
|
capi.sqlite3_js_kvvfs_size = function(which=""){
|
||||||
let sz = 0;
|
let sz = 0;
|
||||||
const kvinfo = __kvvfsInfo(which);
|
const kvinfo = __kvvfsInfo(which);
|
||||||
kvinfo.stores.forEach((s)=>{
|
kvinfo.stores.forEach((s)=>{
|
||||||
|
@ -429,7 +429,7 @@ sqlite3.initWorker1API = function(){
|
|||||||
};
|
};
|
||||||
|
|
||||||
const isSpecialDbFilename = (n)=>{
|
const isSpecialDbFilename = (n)=>{
|
||||||
return ''===n || ':'===n[0];
|
return ""===n || ':'===n[0];
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -453,7 +453,7 @@ sqlite3.initWorker1API = function(){
|
|||||||
let byteArray, pVfs;
|
let byteArray, pVfs;
|
||||||
oargs.vfs = args.vfs;
|
oargs.vfs = args.vfs;
|
||||||
if(isSpecialDbFilename(args.filename)){
|
if(isSpecialDbFilename(args.filename)){
|
||||||
oargs.filename = args.filename || '';
|
oargs.filename = args.filename || "";
|
||||||
}else{
|
}else{
|
||||||
oargs.filename = args.filename;
|
oargs.filename = args.filename;
|
||||||
byteArray = args.byteArray;
|
byteArray = args.byteArray;
|
||||||
|
@ -678,7 +678,7 @@ const initS11n = ()=>{
|
|||||||
state.s11n.storeException = state.asyncS11nExceptions
|
state.s11n.storeException = state.asyncS11nExceptions
|
||||||
? ((priority,e)=>{
|
? ((priority,e)=>{
|
||||||
if(priority<=state.asyncS11nExceptions){
|
if(priority<=state.asyncS11nExceptions){
|
||||||
state.s11n.serialize([e.name,': ',e.message].join(''));
|
state.s11n.serialize([e.name,': ',e.message].join(""));
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
: ()=>{};
|
: ()=>{};
|
||||||
|
@ -1101,7 +1101,7 @@ self.WhWasmUtilInstaller = function(target){
|
|||||||
property and a forEach() method. A block of memory list.length
|
property and a forEach() method. A block of memory list.length
|
||||||
entries long is allocated and each pointer-sized block of that
|
entries long is allocated and each pointer-sized block of that
|
||||||
memory is populated with a scopedAllocCString() conversion of the
|
memory is populated with a scopedAllocCString() conversion of the
|
||||||
(''+value) of each element. Returns a pointer to the start of the
|
(""+value) of each element. Returns a pointer to the start of the
|
||||||
list, suitable for passing as the 2nd argument to a C-style
|
list, suitable for passing as the 2nd argument to a C-style
|
||||||
main() function.
|
main() function.
|
||||||
|
|
||||||
|
@ -361,7 +361,7 @@ self.Jaccwabyt = function StructBinderFactory(config){
|
|||||||
framework's native format or in Emscripten format.
|
framework's native format or in Emscripten format.
|
||||||
*/
|
*/
|
||||||
const __memberSignature = function f(obj,memberName,emscriptenFormat=false){
|
const __memberSignature = function f(obj,memberName,emscriptenFormat=false){
|
||||||
if(!f._) f._ = (x)=>x.replace(/[^vipPsjrd]/g,'').replace(/[pPs]/g,'i');
|
if(!f._) f._ = (x)=>x.replace(/[^vipPsjrd]/g,"").replace(/[pPs]/g,'i');
|
||||||
const m = __lookupMember(obj.structInfo, memberName, true);
|
const m = __lookupMember(obj.structInfo, memberName, true);
|
||||||
return emscriptenFormat ? f._(m.signature) : m.signature;
|
return emscriptenFormat ? f._(m.signature) : m.signature;
|
||||||
};
|
};
|
||||||
|
22
manifest
22
manifest
@ -1,5 +1,5 @@
|
|||||||
C Minor\sbuild\scleanups\sand\sfix\sa\sharmless\srace\scondition\sin\sthe\sOPFS\spart\sof\stester1.js.
|
C Globally\sreplace\s''\swith\s""\sfor\sempty\sJS\sstrings\sto\splease\sC\spreprocessor.
|
||||||
D 2022-11-02T14:08:59.340
|
D 2022-11-03T21:21:10.223
|
||||||
F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
|
F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
|
||||||
F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
|
F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
|
||||||
F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724
|
F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724
|
||||||
@ -499,13 +499,13 @@ F ext/wasm/api/post-js-footer.js cd0a8ec768501d9bd45d325ab0442037fb0e33d1f3b4f08
|
|||||||
F ext/wasm/api/post-js-header.js d6ab3dfef4a06960d28a7eaa338d4e2a1a5981e9b38718168bbde8fdb2a439b8
|
F ext/wasm/api/post-js-header.js d6ab3dfef4a06960d28a7eaa338d4e2a1a5981e9b38718168bbde8fdb2a439b8
|
||||||
F ext/wasm/api/pre-js.js 287e462f969342b032c03900e668099fa1471d852df7a472de5bc349161d9c04
|
F ext/wasm/api/pre-js.js 287e462f969342b032c03900e668099fa1471d852df7a472de5bc349161d9c04
|
||||||
F ext/wasm/api/sqlite3-api-cleanup.js ecdc69dbfccfe26146f04799fcfd4a6f5790d46e7e3b9b6e9b0491f92ed8ae34
|
F ext/wasm/api/sqlite3-api-cleanup.js ecdc69dbfccfe26146f04799fcfd4a6f5790d46e7e3b9b6e9b0491f92ed8ae34
|
||||||
F ext/wasm/api/sqlite3-api-glue.js 9cfa26a9818532c80c2555bc98615de3b170d5db0cf4b141cc3aa83c33c8758f
|
F ext/wasm/api/sqlite3-api-glue.js 056f44b82c126358a0175e08a892d56fadfce177b0d7a0012502a6acf67ea6d5
|
||||||
F ext/wasm/api/sqlite3-api-oo1.js e9a83489bbb4838ce0aee46eaaa9350e0e25a5b926b565e4f5ae8e840e4fbaed
|
F ext/wasm/api/sqlite3-api-oo1.js e9a83489bbb4838ce0aee46eaaa9350e0e25a5b926b565e4f5ae8e840e4fbaed
|
||||||
F ext/wasm/api/sqlite3-api-opfs.js cdcbb57acc66f4569ac9e18f9d13d5a3657d8aae195725c6324943da56c1005d
|
F ext/wasm/api/sqlite3-api-opfs.js cdcbb57acc66f4569ac9e18f9d13d5a3657d8aae195725c6324943da56c1005d
|
||||||
F ext/wasm/api/sqlite3-api-prologue.js 1f97261b4d8a60a48f30ee41261e1c4a0c3efff35ae08d7ece243fcf49b3eee3
|
F ext/wasm/api/sqlite3-api-prologue.js 952ba908cc5ee42728c5c09dd549af32ef0c3cc15ab7b919a8007c5684f69320
|
||||||
F ext/wasm/api/sqlite3-api-worker1.js cac2f5c63f950f69b5249c9880d4cd385e914c354c459d4096ed5dbb1248de76
|
F ext/wasm/api/sqlite3-api-worker1.js e94ba98e44afccfa482874cd9acb325883ade50ed1f9f9526beb9de1711f182f
|
||||||
F ext/wasm/api/sqlite3-license-version-header.js a661182fc93fc2cf212dfd0b987f8e138a3ac98f850b1112e29b5fbdaecc87c3
|
F ext/wasm/api/sqlite3-license-version-header.js a661182fc93fc2cf212dfd0b987f8e138a3ac98f850b1112e29b5fbdaecc87c3
|
||||||
F ext/wasm/api/sqlite3-opfs-async-proxy.js 936f57737eb65afc0f4c3494b93f7b02208055226a7b3cb58f551c38b03ab083
|
F ext/wasm/api/sqlite3-opfs-async-proxy.js ab7d2888ad9b3dd24bb782bd882fcada2a20cb88eb78c8f36e7bfe708857dbd1
|
||||||
F ext/wasm/api/sqlite3-wasi.h 25356084cfe0d40458a902afb465df8c21fc4152c1d0a59b563a3fba59a068f9
|
F ext/wasm/api/sqlite3-wasi.h 25356084cfe0d40458a902afb465df8c21fc4152c1d0a59b563a3fba59a068f9
|
||||||
F ext/wasm/api/sqlite3-wasm.c af472ec27bc7a398a2b94329cb7a77f3411109fc17529a289fa10cc55424ece1
|
F ext/wasm/api/sqlite3-wasm.c af472ec27bc7a398a2b94329cb7a77f3411109fc17529a289fa10cc55424ece1
|
||||||
F ext/wasm/api/sqlite3-worker1-promiser.js 0c7a9826dbf82a5ed4e4f7bf7816e825a52aff253afbf3350431f5773faf0e4b
|
F ext/wasm/api/sqlite3-worker1-promiser.js 0c7a9826dbf82a5ed4e4f7bf7816e825a52aff253afbf3350431f5773faf0e4b
|
||||||
@ -515,7 +515,7 @@ F ext/wasm/batch-runner.js 49609e89aaac9989d6c1ad3fae268e4878e1ad7bc5fd3e5c2f449
|
|||||||
F ext/wasm/common/SqliteTestUtil.js d8bf97ecb0705a2299765c8fc9e11b1a5ac7f10988bbf375a6558b7ca287067b
|
F ext/wasm/common/SqliteTestUtil.js d8bf97ecb0705a2299765c8fc9e11b1a5ac7f10988bbf375a6558b7ca287067b
|
||||||
F ext/wasm/common/emscripten.css 3d253a6fdb8983a2ac983855bfbdd4b6fa1ff267c28d69513dd6ef1f289ada3f
|
F ext/wasm/common/emscripten.css 3d253a6fdb8983a2ac983855bfbdd4b6fa1ff267c28d69513dd6ef1f289ada3f
|
||||||
F ext/wasm/common/testing.css 35889709547d89a6109ff83b25c11bbc91d8dd43aab8722e428655ca98880a06
|
F ext/wasm/common/testing.css 35889709547d89a6109ff83b25c11bbc91d8dd43aab8722e428655ca98880a06
|
||||||
F ext/wasm/common/whwasmutil.js 77930367c2a65cf6fd6f99ad3644ede33e4d20466f5e506eb87b8d101a0a7655
|
F ext/wasm/common/whwasmutil.js 16a592d5c304a2d268ca1c28e08a5b029a2f3cbe10af78dbc3456cfc9e3559d1
|
||||||
F ext/wasm/demo-123-worker.html a0b58d9caef098a626a1a1db567076fca4245e8d60ba94557ede8684350a81ed
|
F ext/wasm/demo-123-worker.html a0b58d9caef098a626a1a1db567076fca4245e8d60ba94557ede8684350a81ed
|
||||||
F ext/wasm/demo-123.html 8c70a412ce386bd3796534257935eb1e3ea5c581e5d5aea0490b8232e570a508
|
F ext/wasm/demo-123.html 8c70a412ce386bd3796534257935eb1e3ea5c581e5d5aea0490b8232e570a508
|
||||||
F ext/wasm/demo-123.js ebae30756585bca655b4ab2553ec9236a87c23ad24fc8652115dcedb06d28df6
|
F ext/wasm/demo-123.js ebae30756585bca655b4ab2553ec9236a87c23ad24fc8652115dcedb06d28df6
|
||||||
@ -533,7 +533,7 @@ F ext/wasm/fiddle/fiddle.js 974b995119ac443685d7d94d3b3c58c6a36540e9eb3fed7069d5
|
|||||||
F ext/wasm/fiddle/index.html 5daf54e8f3d7777cbb1ca4f93affe28858dbfff25841cb4ab81d694efed28ec2
|
F ext/wasm/fiddle/index.html 5daf54e8f3d7777cbb1ca4f93affe28858dbfff25841cb4ab81d694efed28ec2
|
||||||
F ext/wasm/index-dist.html cb0da16cba0f21cda2c25724c5869102d48eb0af04446acd3cd0ca031f80ed19
|
F ext/wasm/index-dist.html cb0da16cba0f21cda2c25724c5869102d48eb0af04446acd3cd0ca031f80ed19
|
||||||
F ext/wasm/index.html ce6a68a75532b47e3c0adb83381a06d15de8c0ac0331fb7bf31d33f8e7c77dc4
|
F ext/wasm/index.html ce6a68a75532b47e3c0adb83381a06d15de8c0ac0331fb7bf31d33f8e7c77dc4
|
||||||
F ext/wasm/jaccwabyt/jaccwabyt.js 0d7f32817456a0f3937fcfd934afeb32154ca33580ab264dab6c285e6dbbd215
|
F ext/wasm/jaccwabyt/jaccwabyt.js 95f573de1826474c9605dda620ee622fcb1673ae74f191eb324c0853aa4dcb66
|
||||||
F ext/wasm/jaccwabyt/jaccwabyt.md 9aa6951b529a8b29f578ec8f0355713c39584c92cf1708f63ba0cf917cb5b68e
|
F ext/wasm/jaccwabyt/jaccwabyt.md 9aa6951b529a8b29f578ec8f0355713c39584c92cf1708f63ba0cf917cb5b68e
|
||||||
F ext/wasm/module-symbols.html eca884ef4380612145ee550213be57478ee2b9cd9a9c2b27530cc23359c99682
|
F ext/wasm/module-symbols.html eca884ef4380612145ee550213be57478ee2b9cd9a9c2b27530cc23359c99682
|
||||||
F ext/wasm/scratchpad-wasmfs-main.html 20cf6f1a8f368e70d01e8c17200e3eaa90f1c8e1029186d836d14b83845fbe06
|
F ext/wasm/scratchpad-wasmfs-main.html 20cf6f1a8f368e70d01e8c17200e3eaa90f1c8e1029186d836d14b83845fbe06
|
||||||
@ -2054,8 +2054,8 @@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a91a7acc6293828957a386a8a93
|
|||||||
F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc
|
F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc
|
||||||
F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e
|
F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e
|
||||||
F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0
|
F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0
|
||||||
P f6fa0cffa921ccde8910e7fa4a63c2e4ef8ddb376c8ce99e436b27ac332c4498
|
P 70ee6ee014bc4e2c1daa9b4a8909cf76ccecf32de1eb39055f20d3d0b1daa1bd
|
||||||
R 49cc6fc37416a3ba7fdfd0b20ce15895
|
R eaaf8a7ca25305cffe9e8f7e734e3ee8
|
||||||
U stephan
|
U stephan
|
||||||
Z b66cc4ccdf23cf485ede2fda7e429a86
|
Z b98d96f31e9b735c045c03e6eefd13f8
|
||||||
# Remove this line to create a well-formed Fossil manifest.
|
# Remove this line to create a well-formed Fossil manifest.
|
||||||
|
@ -1 +1 @@
|
|||||||
70ee6ee014bc4e2c1daa9b4a8909cf76ccecf32de1eb39055f20d3d0b1daa1bd
|
e92e1f42bef94a1df29f66b4111ebfde93eba3759bc5d5a9c95f714508851346
|
Reference in New Issue
Block a user