@php-wasm/node 2.0.5 → 2.0.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/index.cjs CHANGED
@@ -685,7 +685,7 @@ function init2(RuntimeName, PHPLoader) {
685
685
  };
686
686
  var wasmTableMirror = [];
687
687
  var wasmTable = new WebAssembly.Table({
688
- initial: 16555,
688
+ initial: 16556,
689
689
  element: "anyfunc"
690
690
  });
691
691
  var getWasmTableEntry = (funcPtr) => {
@@ -5760,27 +5760,21 @@ function init2(RuntimeName, PHPLoader) {
5760
5760
  1: "exclusive",
5761
5761
  2: "unlocked"
5762
5762
  },
5763
- is_shared_fs_node(node) {
5764
- if (node?.isSharedFS) {
5765
- return true;
5766
- }
5767
- if (!node?.mount?.opts?.fs?.lookupPath || !node?.mount?.type?.realPath) {
5768
- return false;
5769
- }
5770
- if (node.mount.type !== NODEFS) {
5771
- return false;
5772
- }
5773
- const vfsPath = node.mount.type.realPath(node);
5774
- try {
5775
- const underlyingNode = node.mount.opts.fs.lookupPath(vfsPath)?.node;
5776
- return !!underlyingNode?.isSharedFS;
5777
- } catch (e) {
5778
- return false;
5779
- }
5780
- },
5781
5763
  is_path_to_shared_fs(path33) {
5782
- const { node } = FS.lookupPath(path33);
5783
- return locking.is_shared_fs_node(node);
5764
+ _js_wasm_trace("is_path_to_shared_fs(%s)", path33);
5765
+ const { node } = FS.lookupPath(path33, { noent_okay: true });
5766
+ if (node.mount.type !== PROXYFS) {
5767
+ return !!node.isSharedFS;
5768
+ }
5769
+ const nodePath2 = PROXYFS.realPath(node);
5770
+ const backingFs = node?.mount?.opts?.fs;
5771
+ if (backingFs) {
5772
+ const { node: backingNode } = backingFs.lookupPath(nodePath2, {
5773
+ noent_okay: true
5774
+ });
5775
+ return !!backingNode?.isSharedFS;
5776
+ }
5777
+ return false;
5784
5778
  },
5785
5779
  get_fd_access_mode(fd) {
5786
5780
  const emscripten_F_GETFL = Number("3");
@@ -5795,8 +5789,23 @@ function init2(RuntimeName, PHPLoader) {
5795
5789
  }
5796
5790
  },
5797
5791
  get_native_path_from_vfs_path(vfsPath) {
5798
- const { node } = FS.lookupPath(vfsPath);
5799
- return NODEFS.realPath(node);
5792
+ const { node } = FS.lookupPath(vfsPath, {});
5793
+ if (node.mount.type === NODEFS) {
5794
+ return NODEFS.realPath(node);
5795
+ } else if (node.mount.type === PROXYFS) {
5796
+ const { node: backingNode, path: backingPath } = node.mount.opts.fs.lookupPath(vfsPath);
5797
+ _js_wasm_trace(
5798
+ "backingNode for %s: %s",
5799
+ vfsPath,
5800
+ backingPath,
5801
+ backingNode
5802
+ );
5803
+ return backingNode.mount.type.realPath(backingNode);
5804
+ } else {
5805
+ throw new Error(
5806
+ `Unsupported filesystem type for path ${vfsPath}`
5807
+ );
5808
+ }
5800
5809
  },
5801
5810
  check_lock_params(fd, l_type) {
5802
5811
  const emscripten_O_RDONLY = Number("0");
@@ -25216,13 +25225,13 @@ ${e}`);
25216
25225
  Module["createContext"] = Browser.createContext;
25217
25226
  registerPostMainLoop(() => SDL.audio?.queueNewAudioData?.());
25218
25227
  var ASM_CONSTS = {
25219
- 16328094: ($0) => {
25228
+ 16328046: ($0) => {
25220
25229
  if (!$0) {
25221
25230
  AL.alcErr = 40964;
25222
25231
  return 1;
25223
25232
  }
25224
25233
  },
25225
- 16328142: ($0) => {
25234
+ 16328094: ($0) => {
25226
25235
  if (!AL.currentCtx) {
25227
25236
  err("alGetProcAddress() called without a valid context");
25228
25237
  return 1;
@@ -28067,15 +28076,15 @@ ${e}`);
28067
28076
  PHPLoader["malloc"] = _malloc;
28068
28077
  PHPLoader["free"] = typeof _free === "function" ? _free : PHPLoader["_wasm_free"];
28069
28078
  if (typeof NODEFS === "object") {
28070
- const originalCreateNode = NODEFS.createNode;
28079
+ const originalNodeFsCreateNode = NODEFS.createNode;
28071
28080
  NODEFS.createNode = function createNodeWithSharedFlag() {
28072
- const node = originalCreateNode.apply(NODEFS, arguments);
28081
+ const node = originalNodeFsCreateNode.apply(NODEFS, arguments);
28073
28082
  node.isSharedFS = true;
28074
28083
  return node;
28075
28084
  };
28076
28085
  var originalHashAddNode = FS.hashAddNode;
28077
28086
  FS.hashAddNode = function hashAddNodeIfNotSharedFS(node) {
28078
- if (typeof locking === "object" && locking?.is_shared_fs_node(node)) {
28087
+ if (node?.isSharedFS) {
28079
28088
  return;
28080
28089
  }
28081
28090
  return originalHashAddNode.apply(FS, arguments);
@@ -28093,9 +28102,9 @@ var init_php_8_4 = __esm({
28093
28102
  "use strict";
28094
28103
  import_module = require("module");
28095
28104
  import_path = __toESM(require("path"), 1);
28096
- dependencyFilename = import_path.default.join(__dirname + "/jspi", "8_4_10", "php_8_4.wasm");
28097
- dependenciesTotalSize = 36372438;
28098
- phpVersionString = "8.4.10";
28105
+ dependencyFilename = import_path.default.join(__dirname + "/jspi", "8_4_11", "php_8_4.wasm");
28106
+ dependenciesTotalSize = 36373389;
28107
+ phpVersionString = "8.4.11";
28099
28108
  }
28100
28109
  });
28101
28110
 
@@ -28754,7 +28763,7 @@ function init3(RuntimeName, PHPLoader) {
28754
28763
  };
28755
28764
  var wasmTableMirror = [];
28756
28765
  var wasmTable = new WebAssembly.Table({
28757
- initial: 15738,
28766
+ initial: 15739,
28758
28767
  element: "anyfunc"
28759
28768
  });
28760
28769
  var getWasmTableEntry = (funcPtr) => {
@@ -33829,27 +33838,21 @@ function init3(RuntimeName, PHPLoader) {
33829
33838
  1: "exclusive",
33830
33839
  2: "unlocked"
33831
33840
  },
33832
- is_shared_fs_node(node) {
33833
- if (node?.isSharedFS) {
33834
- return true;
33835
- }
33836
- if (!node?.mount?.opts?.fs?.lookupPath || !node?.mount?.type?.realPath) {
33837
- return false;
33838
- }
33839
- if (node.mount.type !== NODEFS) {
33840
- return false;
33841
- }
33842
- const vfsPath = node.mount.type.realPath(node);
33843
- try {
33844
- const underlyingNode = node.mount.opts.fs.lookupPath(vfsPath)?.node;
33845
- return !!underlyingNode?.isSharedFS;
33846
- } catch (e) {
33847
- return false;
33848
- }
33849
- },
33850
33841
  is_path_to_shared_fs(path33) {
33851
- const { node } = FS.lookupPath(path33);
33852
- return locking.is_shared_fs_node(node);
33842
+ _js_wasm_trace("is_path_to_shared_fs(%s)", path33);
33843
+ const { node } = FS.lookupPath(path33, { noent_okay: true });
33844
+ if (node.mount.type !== PROXYFS) {
33845
+ return !!node.isSharedFS;
33846
+ }
33847
+ const nodePath2 = PROXYFS.realPath(node);
33848
+ const backingFs = node?.mount?.opts?.fs;
33849
+ if (backingFs) {
33850
+ const { node: backingNode } = backingFs.lookupPath(nodePath2, {
33851
+ noent_okay: true
33852
+ });
33853
+ return !!backingNode?.isSharedFS;
33854
+ }
33855
+ return false;
33853
33856
  },
33854
33857
  get_fd_access_mode(fd) {
33855
33858
  const emscripten_F_GETFL = Number("3");
@@ -33864,8 +33867,23 @@ function init3(RuntimeName, PHPLoader) {
33864
33867
  }
33865
33868
  },
33866
33869
  get_native_path_from_vfs_path(vfsPath) {
33867
- const { node } = FS.lookupPath(vfsPath);
33868
- return NODEFS.realPath(node);
33870
+ const { node } = FS.lookupPath(vfsPath, {});
33871
+ if (node.mount.type === NODEFS) {
33872
+ return NODEFS.realPath(node);
33873
+ } else if (node.mount.type === PROXYFS) {
33874
+ const { node: backingNode, path: backingPath } = node.mount.opts.fs.lookupPath(vfsPath);
33875
+ _js_wasm_trace(
33876
+ "backingNode for %s: %s",
33877
+ vfsPath,
33878
+ backingPath,
33879
+ backingNode
33880
+ );
33881
+ return backingNode.mount.type.realPath(backingNode);
33882
+ } else {
33883
+ throw new Error(
33884
+ `Unsupported filesystem type for path ${vfsPath}`
33885
+ );
33886
+ }
33869
33887
  },
33870
33888
  check_lock_params(fd, l_type) {
33871
33889
  const emscripten_O_RDONLY = Number("0");
@@ -53285,13 +53303,13 @@ ${e}`);
53285
53303
  Module["createContext"] = Browser.createContext;
53286
53304
  registerPostMainLoop(() => SDL.audio?.queueNewAudioData?.());
53287
53305
  var ASM_CONSTS = {
53288
- 13232622: ($0) => {
53306
+ 13232510: ($0) => {
53289
53307
  if (!$0) {
53290
53308
  AL.alcErr = 40964;
53291
53309
  return 1;
53292
53310
  }
53293
53311
  },
53294
- 13232670: ($0) => {
53312
+ 13232558: ($0) => {
53295
53313
  if (!AL.currentCtx) {
53296
53314
  err("alGetProcAddress() called without a valid context");
53297
53315
  return 1;
@@ -56136,15 +56154,15 @@ ${e}`);
56136
56154
  PHPLoader["malloc"] = _malloc;
56137
56155
  PHPLoader["free"] = typeof _free === "function" ? _free : PHPLoader["_wasm_free"];
56138
56156
  if (typeof NODEFS === "object") {
56139
- const originalCreateNode = NODEFS.createNode;
56157
+ const originalNodeFsCreateNode = NODEFS.createNode;
56140
56158
  NODEFS.createNode = function createNodeWithSharedFlag() {
56141
- const node = originalCreateNode.apply(NODEFS, arguments);
56159
+ const node = originalNodeFsCreateNode.apply(NODEFS, arguments);
56142
56160
  node.isSharedFS = true;
56143
56161
  return node;
56144
56162
  };
56145
56163
  var originalHashAddNode = FS.hashAddNode;
56146
56164
  FS.hashAddNode = function hashAddNodeIfNotSharedFS(node) {
56147
- if (typeof locking === "object" && locking?.is_shared_fs_node(node)) {
56165
+ if (node?.isSharedFS) {
56148
56166
  return;
56149
56167
  }
56150
56168
  return originalHashAddNode.apply(FS, arguments);
@@ -56162,9 +56180,9 @@ var init_php_8_3 = __esm({
56162
56180
  "use strict";
56163
56181
  import_module2 = require("module");
56164
56182
  import_path2 = __toESM(require("path"), 1);
56165
- dependencyFilename2 = import_path2.default.join(__dirname + "/jspi", "8_3_23", "php_8_3.wasm");
56166
- dependenciesTotalSize2 = 32571921;
56167
- phpVersionString2 = "8.3.23";
56183
+ dependencyFilename2 = import_path2.default.join(__dirname + "/jspi", "8_3_24", "php_8_3.wasm");
56184
+ dependenciesTotalSize2 = 32572592;
56185
+ phpVersionString2 = "8.3.24";
56168
56186
  }
56169
56187
  });
56170
56188
 
@@ -61898,27 +61916,21 @@ function init4(RuntimeName, PHPLoader) {
61898
61916
  1: "exclusive",
61899
61917
  2: "unlocked"
61900
61918
  },
61901
- is_shared_fs_node(node) {
61902
- if (node?.isSharedFS) {
61903
- return true;
61904
- }
61905
- if (!node?.mount?.opts?.fs?.lookupPath || !node?.mount?.type?.realPath) {
61906
- return false;
61907
- }
61908
- if (node.mount.type !== NODEFS) {
61909
- return false;
61910
- }
61911
- const vfsPath = node.mount.type.realPath(node);
61912
- try {
61913
- const underlyingNode = node.mount.opts.fs.lookupPath(vfsPath)?.node;
61914
- return !!underlyingNode?.isSharedFS;
61915
- } catch (e) {
61916
- return false;
61917
- }
61918
- },
61919
61919
  is_path_to_shared_fs(path33) {
61920
- const { node } = FS.lookupPath(path33);
61921
- return locking.is_shared_fs_node(node);
61920
+ _js_wasm_trace("is_path_to_shared_fs(%s)", path33);
61921
+ const { node } = FS.lookupPath(path33, { noent_okay: true });
61922
+ if (node.mount.type !== PROXYFS) {
61923
+ return !!node.isSharedFS;
61924
+ }
61925
+ const nodePath2 = PROXYFS.realPath(node);
61926
+ const backingFs = node?.mount?.opts?.fs;
61927
+ if (backingFs) {
61928
+ const { node: backingNode } = backingFs.lookupPath(nodePath2, {
61929
+ noent_okay: true
61930
+ });
61931
+ return !!backingNode?.isSharedFS;
61932
+ }
61933
+ return false;
61922
61934
  },
61923
61935
  get_fd_access_mode(fd) {
61924
61936
  const emscripten_F_GETFL = Number("3");
@@ -61933,8 +61945,23 @@ function init4(RuntimeName, PHPLoader) {
61933
61945
  }
61934
61946
  },
61935
61947
  get_native_path_from_vfs_path(vfsPath) {
61936
- const { node } = FS.lookupPath(vfsPath);
61937
- return NODEFS.realPath(node);
61948
+ const { node } = FS.lookupPath(vfsPath, {});
61949
+ if (node.mount.type === NODEFS) {
61950
+ return NODEFS.realPath(node);
61951
+ } else if (node.mount.type === PROXYFS) {
61952
+ const { node: backingNode, path: backingPath } = node.mount.opts.fs.lookupPath(vfsPath);
61953
+ _js_wasm_trace(
61954
+ "backingNode for %s: %s",
61955
+ vfsPath,
61956
+ backingPath,
61957
+ backingNode
61958
+ );
61959
+ return backingNode.mount.type.realPath(backingNode);
61960
+ } else {
61961
+ throw new Error(
61962
+ `Unsupported filesystem type for path ${vfsPath}`
61963
+ );
61964
+ }
61938
61965
  },
61939
61966
  check_lock_params(fd, l_type) {
61940
61967
  const emscripten_O_RDONLY = Number("0");
@@ -84205,15 +84232,15 @@ ${e}`);
84205
84232
  PHPLoader["malloc"] = _malloc;
84206
84233
  PHPLoader["free"] = typeof _free === "function" ? _free : PHPLoader["_wasm_free"];
84207
84234
  if (typeof NODEFS === "object") {
84208
- const originalCreateNode = NODEFS.createNode;
84235
+ const originalNodeFsCreateNode = NODEFS.createNode;
84209
84236
  NODEFS.createNode = function createNodeWithSharedFlag() {
84210
- const node = originalCreateNode.apply(NODEFS, arguments);
84237
+ const node = originalNodeFsCreateNode.apply(NODEFS, arguments);
84211
84238
  node.isSharedFS = true;
84212
84239
  return node;
84213
84240
  };
84214
84241
  var originalHashAddNode = FS.hashAddNode;
84215
84242
  FS.hashAddNode = function hashAddNodeIfNotSharedFS(node) {
84216
- if (typeof locking === "object" && locking?.is_shared_fs_node(node)) {
84243
+ if (node?.isSharedFS) {
84217
84244
  return;
84218
84245
  }
84219
84246
  return originalHashAddNode.apply(FS, arguments);
@@ -89967,27 +89994,21 @@ function init5(RuntimeName, PHPLoader) {
89967
89994
  1: "exclusive",
89968
89995
  2: "unlocked"
89969
89996
  },
89970
- is_shared_fs_node(node) {
89971
- if (node?.isSharedFS) {
89972
- return true;
89973
- }
89974
- if (!node?.mount?.opts?.fs?.lookupPath || !node?.mount?.type?.realPath) {
89975
- return false;
89976
- }
89977
- if (node.mount.type !== NODEFS) {
89978
- return false;
89979
- }
89980
- const vfsPath = node.mount.type.realPath(node);
89981
- try {
89982
- const underlyingNode = node.mount.opts.fs.lookupPath(vfsPath)?.node;
89983
- return !!underlyingNode?.isSharedFS;
89984
- } catch (e) {
89985
- return false;
89986
- }
89987
- },
89988
89997
  is_path_to_shared_fs(path33) {
89989
- const { node } = FS.lookupPath(path33);
89990
- return locking.is_shared_fs_node(node);
89998
+ _js_wasm_trace("is_path_to_shared_fs(%s)", path33);
89999
+ const { node } = FS.lookupPath(path33, { noent_okay: true });
90000
+ if (node.mount.type !== PROXYFS) {
90001
+ return !!node.isSharedFS;
90002
+ }
90003
+ const nodePath2 = PROXYFS.realPath(node);
90004
+ const backingFs = node?.mount?.opts?.fs;
90005
+ if (backingFs) {
90006
+ const { node: backingNode } = backingFs.lookupPath(nodePath2, {
90007
+ noent_okay: true
90008
+ });
90009
+ return !!backingNode?.isSharedFS;
90010
+ }
90011
+ return false;
89991
90012
  },
89992
90013
  get_fd_access_mode(fd) {
89993
90014
  const emscripten_F_GETFL = Number("3");
@@ -90002,8 +90023,23 @@ function init5(RuntimeName, PHPLoader) {
90002
90023
  }
90003
90024
  },
90004
90025
  get_native_path_from_vfs_path(vfsPath) {
90005
- const { node } = FS.lookupPath(vfsPath);
90006
- return NODEFS.realPath(node);
90026
+ const { node } = FS.lookupPath(vfsPath, {});
90027
+ if (node.mount.type === NODEFS) {
90028
+ return NODEFS.realPath(node);
90029
+ } else if (node.mount.type === PROXYFS) {
90030
+ const { node: backingNode, path: backingPath } = node.mount.opts.fs.lookupPath(vfsPath);
90031
+ _js_wasm_trace(
90032
+ "backingNode for %s: %s",
90033
+ vfsPath,
90034
+ backingPath,
90035
+ backingNode
90036
+ );
90037
+ return backingNode.mount.type.realPath(backingNode);
90038
+ } else {
90039
+ throw new Error(
90040
+ `Unsupported filesystem type for path ${vfsPath}`
90041
+ );
90042
+ }
90007
90043
  },
90008
90044
  check_lock_params(fd, l_type) {
90009
90045
  const emscripten_O_RDONLY = Number("0");
@@ -112274,15 +112310,15 @@ ${e}`);
112274
112310
  PHPLoader["malloc"] = _malloc;
112275
112311
  PHPLoader["free"] = typeof _free === "function" ? _free : PHPLoader["_wasm_free"];
112276
112312
  if (typeof NODEFS === "object") {
112277
- const originalCreateNode = NODEFS.createNode;
112313
+ const originalNodeFsCreateNode = NODEFS.createNode;
112278
112314
  NODEFS.createNode = function createNodeWithSharedFlag() {
112279
- const node = originalCreateNode.apply(NODEFS, arguments);
112315
+ const node = originalNodeFsCreateNode.apply(NODEFS, arguments);
112280
112316
  node.isSharedFS = true;
112281
112317
  return node;
112282
112318
  };
112283
112319
  var originalHashAddNode = FS.hashAddNode;
112284
112320
  FS.hashAddNode = function hashAddNodeIfNotSharedFS(node) {
112285
- if (typeof locking === "object" && locking?.is_shared_fs_node(node)) {
112321
+ if (node?.isSharedFS) {
112286
112322
  return;
112287
112323
  }
112288
112324
  return originalHashAddNode.apply(FS, arguments);
@@ -118036,27 +118072,21 @@ function init6(RuntimeName, PHPLoader) {
118036
118072
  1: "exclusive",
118037
118073
  2: "unlocked"
118038
118074
  },
118039
- is_shared_fs_node(node) {
118040
- if (node?.isSharedFS) {
118041
- return true;
118042
- }
118043
- if (!node?.mount?.opts?.fs?.lookupPath || !node?.mount?.type?.realPath) {
118044
- return false;
118045
- }
118046
- if (node.mount.type !== NODEFS) {
118047
- return false;
118048
- }
118049
- const vfsPath = node.mount.type.realPath(node);
118050
- try {
118051
- const underlyingNode = node.mount.opts.fs.lookupPath(vfsPath)?.node;
118052
- return !!underlyingNode?.isSharedFS;
118053
- } catch (e) {
118054
- return false;
118055
- }
118056
- },
118057
118075
  is_path_to_shared_fs(path33) {
118058
- const { node } = FS.lookupPath(path33);
118059
- return locking.is_shared_fs_node(node);
118076
+ _js_wasm_trace("is_path_to_shared_fs(%s)", path33);
118077
+ const { node } = FS.lookupPath(path33, { noent_okay: true });
118078
+ if (node.mount.type !== PROXYFS) {
118079
+ return !!node.isSharedFS;
118080
+ }
118081
+ const nodePath2 = PROXYFS.realPath(node);
118082
+ const backingFs = node?.mount?.opts?.fs;
118083
+ if (backingFs) {
118084
+ const { node: backingNode } = backingFs.lookupPath(nodePath2, {
118085
+ noent_okay: true
118086
+ });
118087
+ return !!backingNode?.isSharedFS;
118088
+ }
118089
+ return false;
118060
118090
  },
118061
118091
  get_fd_access_mode(fd) {
118062
118092
  const emscripten_F_GETFL = Number("3");
@@ -118071,8 +118101,23 @@ function init6(RuntimeName, PHPLoader) {
118071
118101
  }
118072
118102
  },
118073
118103
  get_native_path_from_vfs_path(vfsPath) {
118074
- const { node } = FS.lookupPath(vfsPath);
118075
- return NODEFS.realPath(node);
118104
+ const { node } = FS.lookupPath(vfsPath, {});
118105
+ if (node.mount.type === NODEFS) {
118106
+ return NODEFS.realPath(node);
118107
+ } else if (node.mount.type === PROXYFS) {
118108
+ const { node: backingNode, path: backingPath } = node.mount.opts.fs.lookupPath(vfsPath);
118109
+ _js_wasm_trace(
118110
+ "backingNode for %s: %s",
118111
+ vfsPath,
118112
+ backingPath,
118113
+ backingNode
118114
+ );
118115
+ return backingNode.mount.type.realPath(backingNode);
118116
+ } else {
118117
+ throw new Error(
118118
+ `Unsupported filesystem type for path ${vfsPath}`
118119
+ );
118120
+ }
118076
118121
  },
118077
118122
  check_lock_params(fd, l_type) {
118078
118123
  const emscripten_O_RDONLY = Number("0");
@@ -140343,15 +140388,15 @@ ${e}`);
140343
140388
  PHPLoader["malloc"] = _malloc;
140344
140389
  PHPLoader["free"] = typeof _free === "function" ? _free : PHPLoader["_wasm_free"];
140345
140390
  if (typeof NODEFS === "object") {
140346
- const originalCreateNode = NODEFS.createNode;
140391
+ const originalNodeFsCreateNode = NODEFS.createNode;
140347
140392
  NODEFS.createNode = function createNodeWithSharedFlag() {
140348
- const node = originalCreateNode.apply(NODEFS, arguments);
140393
+ const node = originalNodeFsCreateNode.apply(NODEFS, arguments);
140349
140394
  node.isSharedFS = true;
140350
140395
  return node;
140351
140396
  };
140352
140397
  var originalHashAddNode = FS.hashAddNode;
140353
140398
  FS.hashAddNode = function hashAddNodeIfNotSharedFS(node) {
140354
- if (typeof locking === "object" && locking?.is_shared_fs_node(node)) {
140399
+ if (node?.isSharedFS) {
140355
140400
  return;
140356
140401
  }
140357
140402
  return originalHashAddNode.apply(FS, arguments);
@@ -146105,27 +146150,21 @@ function init7(RuntimeName, PHPLoader) {
146105
146150
  1: "exclusive",
146106
146151
  2: "unlocked"
146107
146152
  },
146108
- is_shared_fs_node(node) {
146109
- if (node?.isSharedFS) {
146110
- return true;
146111
- }
146112
- if (!node?.mount?.opts?.fs?.lookupPath || !node?.mount?.type?.realPath) {
146113
- return false;
146114
- }
146115
- if (node.mount.type !== NODEFS) {
146116
- return false;
146117
- }
146118
- const vfsPath = node.mount.type.realPath(node);
146119
- try {
146120
- const underlyingNode = node.mount.opts.fs.lookupPath(vfsPath)?.node;
146121
- return !!underlyingNode?.isSharedFS;
146122
- } catch (e) {
146123
- return false;
146124
- }
146125
- },
146126
146153
  is_path_to_shared_fs(path33) {
146127
- const { node } = FS.lookupPath(path33);
146128
- return locking.is_shared_fs_node(node);
146154
+ _js_wasm_trace("is_path_to_shared_fs(%s)", path33);
146155
+ const { node } = FS.lookupPath(path33, { noent_okay: true });
146156
+ if (node.mount.type !== PROXYFS) {
146157
+ return !!node.isSharedFS;
146158
+ }
146159
+ const nodePath2 = PROXYFS.realPath(node);
146160
+ const backingFs = node?.mount?.opts?.fs;
146161
+ if (backingFs) {
146162
+ const { node: backingNode } = backingFs.lookupPath(nodePath2, {
146163
+ noent_okay: true
146164
+ });
146165
+ return !!backingNode?.isSharedFS;
146166
+ }
146167
+ return false;
146129
146168
  },
146130
146169
  get_fd_access_mode(fd) {
146131
146170
  const emscripten_F_GETFL = Number("3");
@@ -146140,8 +146179,23 @@ function init7(RuntimeName, PHPLoader) {
146140
146179
  }
146141
146180
  },
146142
146181
  get_native_path_from_vfs_path(vfsPath) {
146143
- const { node } = FS.lookupPath(vfsPath);
146144
- return NODEFS.realPath(node);
146182
+ const { node } = FS.lookupPath(vfsPath, {});
146183
+ if (node.mount.type === NODEFS) {
146184
+ return NODEFS.realPath(node);
146185
+ } else if (node.mount.type === PROXYFS) {
146186
+ const { node: backingNode, path: backingPath } = node.mount.opts.fs.lookupPath(vfsPath);
146187
+ _js_wasm_trace(
146188
+ "backingNode for %s: %s",
146189
+ vfsPath,
146190
+ backingPath,
146191
+ backingNode
146192
+ );
146193
+ return backingNode.mount.type.realPath(backingNode);
146194
+ } else {
146195
+ throw new Error(
146196
+ `Unsupported filesystem type for path ${vfsPath}`
146197
+ );
146198
+ }
146145
146199
  },
146146
146200
  check_lock_params(fd, l_type) {
146147
146201
  const emscripten_O_RDONLY = Number("0");
@@ -168412,15 +168466,15 @@ ${e}`);
168412
168466
  PHPLoader["malloc"] = _malloc;
168413
168467
  PHPLoader["free"] = typeof _free === "function" ? _free : PHPLoader["_wasm_free"];
168414
168468
  if (typeof NODEFS === "object") {
168415
- const originalCreateNode = NODEFS.createNode;
168469
+ const originalNodeFsCreateNode = NODEFS.createNode;
168416
168470
  NODEFS.createNode = function createNodeWithSharedFlag() {
168417
- const node = originalCreateNode.apply(NODEFS, arguments);
168471
+ const node = originalNodeFsCreateNode.apply(NODEFS, arguments);
168418
168472
  node.isSharedFS = true;
168419
168473
  return node;
168420
168474
  };
168421
168475
  var originalHashAddNode = FS.hashAddNode;
168422
168476
  FS.hashAddNode = function hashAddNodeIfNotSharedFS(node) {
168423
- if (typeof locking === "object" && locking?.is_shared_fs_node(node)) {
168477
+ if (node?.isSharedFS) {
168424
168478
  return;
168425
168479
  }
168426
168480
  return originalHashAddNode.apply(FS, arguments);
@@ -174174,27 +174228,21 @@ function init8(RuntimeName, PHPLoader) {
174174
174228
  1: "exclusive",
174175
174229
  2: "unlocked"
174176
174230
  },
174177
- is_shared_fs_node(node) {
174178
- if (node?.isSharedFS) {
174179
- return true;
174180
- }
174181
- if (!node?.mount?.opts?.fs?.lookupPath || !node?.mount?.type?.realPath) {
174182
- return false;
174183
- }
174184
- if (node.mount.type !== NODEFS) {
174185
- return false;
174186
- }
174187
- const vfsPath = node.mount.type.realPath(node);
174188
- try {
174189
- const underlyingNode = node.mount.opts.fs.lookupPath(vfsPath)?.node;
174190
- return !!underlyingNode?.isSharedFS;
174191
- } catch (e) {
174192
- return false;
174193
- }
174194
- },
174195
174231
  is_path_to_shared_fs(path33) {
174196
- const { node } = FS.lookupPath(path33);
174197
- return locking.is_shared_fs_node(node);
174232
+ _js_wasm_trace("is_path_to_shared_fs(%s)", path33);
174233
+ const { node } = FS.lookupPath(path33, { noent_okay: true });
174234
+ if (node.mount.type !== PROXYFS) {
174235
+ return !!node.isSharedFS;
174236
+ }
174237
+ const nodePath2 = PROXYFS.realPath(node);
174238
+ const backingFs = node?.mount?.opts?.fs;
174239
+ if (backingFs) {
174240
+ const { node: backingNode } = backingFs.lookupPath(nodePath2, {
174241
+ noent_okay: true
174242
+ });
174243
+ return !!backingNode?.isSharedFS;
174244
+ }
174245
+ return false;
174198
174246
  },
174199
174247
  get_fd_access_mode(fd) {
174200
174248
  const emscripten_F_GETFL = Number("3");
@@ -174209,8 +174257,23 @@ function init8(RuntimeName, PHPLoader) {
174209
174257
  }
174210
174258
  },
174211
174259
  get_native_path_from_vfs_path(vfsPath) {
174212
- const { node } = FS.lookupPath(vfsPath);
174213
- return NODEFS.realPath(node);
174260
+ const { node } = FS.lookupPath(vfsPath, {});
174261
+ if (node.mount.type === NODEFS) {
174262
+ return NODEFS.realPath(node);
174263
+ } else if (node.mount.type === PROXYFS) {
174264
+ const { node: backingNode, path: backingPath } = node.mount.opts.fs.lookupPath(vfsPath);
174265
+ _js_wasm_trace(
174266
+ "backingNode for %s: %s",
174267
+ vfsPath,
174268
+ backingPath,
174269
+ backingNode
174270
+ );
174271
+ return backingNode.mount.type.realPath(backingNode);
174272
+ } else {
174273
+ throw new Error(
174274
+ `Unsupported filesystem type for path ${vfsPath}`
174275
+ );
174276
+ }
174214
174277
  },
174215
174278
  check_lock_params(fd, l_type) {
174216
174279
  const emscripten_O_RDONLY = Number("0");
@@ -196481,15 +196544,15 @@ ${e}`);
196481
196544
  PHPLoader["malloc"] = _malloc;
196482
196545
  PHPLoader["free"] = typeof _free === "function" ? _free : PHPLoader["_wasm_free"];
196483
196546
  if (typeof NODEFS === "object") {
196484
- const originalCreateNode = NODEFS.createNode;
196547
+ const originalNodeFsCreateNode = NODEFS.createNode;
196485
196548
  NODEFS.createNode = function createNodeWithSharedFlag() {
196486
- const node = originalCreateNode.apply(NODEFS, arguments);
196549
+ const node = originalNodeFsCreateNode.apply(NODEFS, arguments);
196487
196550
  node.isSharedFS = true;
196488
196551
  return node;
196489
196552
  };
196490
196553
  var originalHashAddNode = FS.hashAddNode;
196491
196554
  FS.hashAddNode = function hashAddNodeIfNotSharedFS(node) {
196492
- if (typeof locking === "object" && locking?.is_shared_fs_node(node)) {
196555
+ if (node?.isSharedFS) {
196493
196556
  return;
196494
196557
  }
196495
196558
  return originalHashAddNode.apply(FS, arguments);
@@ -202243,27 +202306,21 @@ function init9(RuntimeName, PHPLoader) {
202243
202306
  1: "exclusive",
202244
202307
  2: "unlocked"
202245
202308
  },
202246
- is_shared_fs_node(node) {
202247
- if (node?.isSharedFS) {
202248
- return true;
202249
- }
202250
- if (!node?.mount?.opts?.fs?.lookupPath || !node?.mount?.type?.realPath) {
202251
- return false;
202252
- }
202253
- if (node.mount.type !== NODEFS) {
202254
- return false;
202255
- }
202256
- const vfsPath = node.mount.type.realPath(node);
202257
- try {
202258
- const underlyingNode = node.mount.opts.fs.lookupPath(vfsPath)?.node;
202259
- return !!underlyingNode?.isSharedFS;
202260
- } catch (e) {
202261
- return false;
202262
- }
202263
- },
202264
202309
  is_path_to_shared_fs(path33) {
202265
- const { node } = FS.lookupPath(path33);
202266
- return locking.is_shared_fs_node(node);
202310
+ _js_wasm_trace("is_path_to_shared_fs(%s)", path33);
202311
+ const { node } = FS.lookupPath(path33, { noent_okay: true });
202312
+ if (node.mount.type !== PROXYFS) {
202313
+ return !!node.isSharedFS;
202314
+ }
202315
+ const nodePath2 = PROXYFS.realPath(node);
202316
+ const backingFs = node?.mount?.opts?.fs;
202317
+ if (backingFs) {
202318
+ const { node: backingNode } = backingFs.lookupPath(nodePath2, {
202319
+ noent_okay: true
202320
+ });
202321
+ return !!backingNode?.isSharedFS;
202322
+ }
202323
+ return false;
202267
202324
  },
202268
202325
  get_fd_access_mode(fd) {
202269
202326
  const emscripten_F_GETFL = Number("3");
@@ -202278,8 +202335,23 @@ function init9(RuntimeName, PHPLoader) {
202278
202335
  }
202279
202336
  },
202280
202337
  get_native_path_from_vfs_path(vfsPath) {
202281
- const { node } = FS.lookupPath(vfsPath);
202282
- return NODEFS.realPath(node);
202338
+ const { node } = FS.lookupPath(vfsPath, {});
202339
+ if (node.mount.type === NODEFS) {
202340
+ return NODEFS.realPath(node);
202341
+ } else if (node.mount.type === PROXYFS) {
202342
+ const { node: backingNode, path: backingPath } = node.mount.opts.fs.lookupPath(vfsPath);
202343
+ _js_wasm_trace(
202344
+ "backingNode for %s: %s",
202345
+ vfsPath,
202346
+ backingPath,
202347
+ backingNode
202348
+ );
202349
+ return backingNode.mount.type.realPath(backingNode);
202350
+ } else {
202351
+ throw new Error(
202352
+ `Unsupported filesystem type for path ${vfsPath}`
202353
+ );
202354
+ }
202283
202355
  },
202284
202356
  check_lock_params(fd, l_type) {
202285
202357
  const emscripten_O_RDONLY = Number("0");
@@ -224550,15 +224622,15 @@ ${e}`);
224550
224622
  PHPLoader["malloc"] = _malloc;
224551
224623
  PHPLoader["free"] = typeof _free === "function" ? _free : PHPLoader["_wasm_free"];
224552
224624
  if (typeof NODEFS === "object") {
224553
- const originalCreateNode = NODEFS.createNode;
224625
+ const originalNodeFsCreateNode = NODEFS.createNode;
224554
224626
  NODEFS.createNode = function createNodeWithSharedFlag() {
224555
- const node = originalCreateNode.apply(NODEFS, arguments);
224627
+ const node = originalNodeFsCreateNode.apply(NODEFS, arguments);
224556
224628
  node.isSharedFS = true;
224557
224629
  return node;
224558
224630
  };
224559
224631
  var originalHashAddNode = FS.hashAddNode;
224560
224632
  FS.hashAddNode = function hashAddNodeIfNotSharedFS(node) {
224561
- if (typeof locking === "object" && locking?.is_shared_fs_node(node)) {
224633
+ if (node?.isSharedFS) {
224562
224634
  return;
224563
224635
  }
224564
224636
  return originalHashAddNode.apply(FS, arguments);
@@ -225233,7 +225305,7 @@ function init10(RuntimeName, PHPLoader) {
225233
225305
  };
225234
225306
  var wasmTableMirror = [];
225235
225307
  var wasmTable = new WebAssembly.Table({
225236
- initial: 16954,
225308
+ initial: 16955,
225237
225309
  element: "anyfunc"
225238
225310
  });
225239
225311
  var getWasmTableEntry = (funcPtr) => {
@@ -230405,27 +230477,21 @@ function init10(RuntimeName, PHPLoader) {
230405
230477
  1: "exclusive",
230406
230478
  2: "unlocked"
230407
230479
  },
230408
- is_shared_fs_node(node) {
230409
- if (node?.isSharedFS) {
230410
- return true;
230411
- }
230412
- if (!node?.mount?.opts?.fs?.lookupPath || !node?.mount?.type?.realPath) {
230413
- return false;
230414
- }
230415
- if (node.mount.type !== NODEFS) {
230416
- return false;
230417
- }
230418
- const vfsPath = node.mount.type.realPath(node);
230419
- try {
230420
- const underlyingNode = node.mount.opts.fs.lookupPath(vfsPath)?.node;
230421
- return !!underlyingNode?.isSharedFS;
230422
- } catch (e) {
230423
- return false;
230424
- }
230425
- },
230426
230480
  is_path_to_shared_fs(path33) {
230427
- const { node } = FS.lookupPath(path33);
230428
- return locking.is_shared_fs_node(node);
230481
+ _js_wasm_trace("is_path_to_shared_fs(%s)", path33);
230482
+ const { node } = FS.lookupPath(path33, { noent_okay: true });
230483
+ if (node.mount.type !== PROXYFS) {
230484
+ return !!node.isSharedFS;
230485
+ }
230486
+ const nodePath2 = PROXYFS.realPath(node);
230487
+ const backingFs = node?.mount?.opts?.fs;
230488
+ if (backingFs) {
230489
+ const { node: backingNode } = backingFs.lookupPath(nodePath2, {
230490
+ noent_okay: true
230491
+ });
230492
+ return !!backingNode?.isSharedFS;
230493
+ }
230494
+ return false;
230429
230495
  },
230430
230496
  get_fd_access_mode(fd) {
230431
230497
  const emscripten_F_GETFL = Number("3");
@@ -230440,8 +230506,23 @@ function init10(RuntimeName, PHPLoader) {
230440
230506
  }
230441
230507
  },
230442
230508
  get_native_path_from_vfs_path(vfsPath) {
230443
- const { node } = FS.lookupPath(vfsPath);
230444
- return NODEFS.realPath(node);
230509
+ const { node } = FS.lookupPath(vfsPath, {});
230510
+ if (node.mount.type === NODEFS) {
230511
+ return NODEFS.realPath(node);
230512
+ } else if (node.mount.type === PROXYFS) {
230513
+ const { node: backingNode, path: backingPath } = node.mount.opts.fs.lookupPath(vfsPath);
230514
+ _js_wasm_trace(
230515
+ "backingNode for %s: %s",
230516
+ vfsPath,
230517
+ backingPath,
230518
+ backingNode
230519
+ );
230520
+ return backingNode.mount.type.realPath(backingNode);
230521
+ } else {
230522
+ throw new Error(
230523
+ `Unsupported filesystem type for path ${vfsPath}`
230524
+ );
230525
+ }
230445
230526
  },
230446
230527
  check_lock_params(fd, l_type) {
230447
230528
  const emscripten_O_RDONLY = Number("0");
@@ -250305,13 +250386,13 @@ ${e}`);
250305
250386
  Module["createContext"] = Browser.createContext;
250306
250387
  registerPostMainLoop(() => SDL.audio?.queueNewAudioData?.());
250307
250388
  var ASM_CONSTS = {
250308
- 16327533: ($0) => {
250389
+ 16327421: ($0) => {
250309
250390
  if (!$0) {
250310
250391
  AL.alcErr = 40964;
250311
250392
  return 1;
250312
250393
  }
250313
250394
  },
250314
- 16327581: ($0) => {
250395
+ 16327469: ($0) => {
250315
250396
  if (!AL.currentCtx) {
250316
250397
  err("alGetProcAddress() called without a valid context");
250317
250398
  return 1;
@@ -253573,15 +253654,15 @@ ${e}`);
253573
253654
  PHPLoader["malloc"] = _malloc;
253574
253655
  PHPLoader["free"] = typeof _free === "function" ? _free : PHPLoader["_wasm_free"];
253575
253656
  if (typeof NODEFS === "object") {
253576
- const originalCreateNode = NODEFS.createNode;
253657
+ const originalNodeFsCreateNode = NODEFS.createNode;
253577
253658
  NODEFS.createNode = function createNodeWithSharedFlag() {
253578
- const node = originalCreateNode.apply(NODEFS, arguments);
253659
+ const node = originalNodeFsCreateNode.apply(NODEFS, arguments);
253579
253660
  node.isSharedFS = true;
253580
253661
  return node;
253581
253662
  };
253582
253663
  var originalHashAddNode = FS.hashAddNode;
253583
253664
  FS.hashAddNode = function hashAddNodeIfNotSharedFS(node) {
253584
- if (typeof locking === "object" && locking?.is_shared_fs_node(node)) {
253665
+ if (node?.isSharedFS) {
253585
253666
  return;
253586
253667
  }
253587
253668
  return originalHashAddNode.apply(FS, arguments);
@@ -253599,9 +253680,9 @@ var init_php_8_42 = __esm({
253599
253680
  "use strict";
253600
253681
  import_module9 = require("module");
253601
253682
  import_path9 = __toESM(require("path"), 1);
253602
- dependencyFilename9 = import_path9.default.join(__dirname + "/asyncify", "8_4_10", "php_8_4.wasm");
253603
- dependenciesTotalSize9 = 36942485;
253604
- phpVersionString9 = "8.4.10";
253683
+ dependencyFilename9 = import_path9.default.join(__dirname + "/asyncify", "8_4_11", "php_8_4.wasm");
253684
+ dependenciesTotalSize9 = 36942530;
253685
+ phpVersionString9 = "8.4.11";
253605
253686
  }
253606
253687
  });
253607
253688
 
@@ -254114,7 +254195,7 @@ function init11(RuntimeName, PHPLoader) {
254114
254195
  newDSO("__main__", 0, wasmImports);
254115
254196
  }
254116
254197
  };
254117
- var ___heap_base = 15213312;
254198
+ var ___heap_base = 15213248;
254118
254199
  var alignMemory = (size, alignment) => {
254119
254200
  return Math.ceil(size / alignment) * alignment;
254120
254201
  };
@@ -254256,7 +254337,7 @@ function init11(RuntimeName, PHPLoader) {
254256
254337
  };
254257
254338
  var wasmTableMirror = [];
254258
254339
  var wasmTable = new WebAssembly.Table({
254259
- initial: 16130,
254340
+ initial: 16131,
254260
254341
  element: "anyfunc"
254261
254342
  });
254262
254343
  var getWasmTableEntry = (funcPtr) => {
@@ -254877,11 +254958,11 @@ function init11(RuntimeName, PHPLoader) {
254877
254958
  { value: "i32", mutable: false },
254878
254959
  1024
254879
254960
  );
254880
- var ___stack_high = 15213312;
254881
- var ___stack_low = 14164736;
254961
+ var ___stack_high = 15213248;
254962
+ var ___stack_low = 14164672;
254882
254963
  var ___stack_pointer = new WebAssembly.Global(
254883
254964
  { value: "i32", mutable: true },
254884
- 15213312
254965
+ 15213248
254885
254966
  );
254886
254967
  var PATH = {
254887
254968
  isAbs: (path33) => path33.charAt(0) === "/",
@@ -259428,27 +259509,21 @@ function init11(RuntimeName, PHPLoader) {
259428
259509
  1: "exclusive",
259429
259510
  2: "unlocked"
259430
259511
  },
259431
- is_shared_fs_node(node) {
259432
- if (node?.isSharedFS) {
259433
- return true;
259434
- }
259435
- if (!node?.mount?.opts?.fs?.lookupPath || !node?.mount?.type?.realPath) {
259436
- return false;
259437
- }
259438
- if (node.mount.type !== NODEFS) {
259439
- return false;
259440
- }
259441
- const vfsPath = node.mount.type.realPath(node);
259442
- try {
259443
- const underlyingNode = node.mount.opts.fs.lookupPath(vfsPath)?.node;
259444
- return !!underlyingNode?.isSharedFS;
259445
- } catch (e) {
259446
- return false;
259447
- }
259448
- },
259449
259512
  is_path_to_shared_fs(path33) {
259450
- const { node } = FS.lookupPath(path33);
259451
- return locking.is_shared_fs_node(node);
259513
+ _js_wasm_trace("is_path_to_shared_fs(%s)", path33);
259514
+ const { node } = FS.lookupPath(path33, { noent_okay: true });
259515
+ if (node.mount.type !== PROXYFS) {
259516
+ return !!node.isSharedFS;
259517
+ }
259518
+ const nodePath2 = PROXYFS.realPath(node);
259519
+ const backingFs = node?.mount?.opts?.fs;
259520
+ if (backingFs) {
259521
+ const { node: backingNode } = backingFs.lookupPath(nodePath2, {
259522
+ noent_okay: true
259523
+ });
259524
+ return !!backingNode?.isSharedFS;
259525
+ }
259526
+ return false;
259452
259527
  },
259453
259528
  get_fd_access_mode(fd) {
259454
259529
  const emscripten_F_GETFL = Number("3");
@@ -259463,8 +259538,23 @@ function init11(RuntimeName, PHPLoader) {
259463
259538
  }
259464
259539
  },
259465
259540
  get_native_path_from_vfs_path(vfsPath) {
259466
- const { node } = FS.lookupPath(vfsPath);
259467
- return NODEFS.realPath(node);
259541
+ const { node } = FS.lookupPath(vfsPath, {});
259542
+ if (node.mount.type === NODEFS) {
259543
+ return NODEFS.realPath(node);
259544
+ } else if (node.mount.type === PROXYFS) {
259545
+ const { node: backingNode, path: backingPath } = node.mount.opts.fs.lookupPath(vfsPath);
259546
+ _js_wasm_trace(
259547
+ "backingNode for %s: %s",
259548
+ vfsPath,
259549
+ backingPath,
259550
+ backingNode
259551
+ );
259552
+ return backingNode.mount.type.realPath(backingNode);
259553
+ } else {
259554
+ throw new Error(
259555
+ `Unsupported filesystem type for path ${vfsPath}`
259556
+ );
259557
+ }
259468
259558
  },
259469
259559
  check_lock_params(fd, l_type) {
259470
259560
  const emscripten_O_RDONLY = Number("0");
@@ -279328,13 +279418,13 @@ ${e}`);
279328
279418
  Module["createContext"] = Browser.createContext;
279329
279419
  registerPostMainLoop(() => SDL.audio?.queueNewAudioData?.());
279330
279420
  var ASM_CONSTS = {
279331
- 13232061: ($0) => {
279421
+ 13231949: ($0) => {
279332
279422
  if (!$0) {
279333
279423
  AL.alcErr = 40964;
279334
279424
  return 1;
279335
279425
  }
279336
279426
  },
279337
- 13232109: ($0) => {
279427
+ 13231997: ($0) => {
279338
279428
  if (!AL.currentCtx) {
279339
279429
  err("alGetProcAddress() called without a valid context");
279340
279430
  return 1;
@@ -282609,15 +282699,15 @@ ${e}`);
282609
282699
  PHPLoader["malloc"] = _malloc;
282610
282700
  PHPLoader["free"] = typeof _free === "function" ? _free : PHPLoader["_wasm_free"];
282611
282701
  if (typeof NODEFS === "object") {
282612
- const originalCreateNode = NODEFS.createNode;
282702
+ const originalNodeFsCreateNode = NODEFS.createNode;
282613
282703
  NODEFS.createNode = function createNodeWithSharedFlag() {
282614
- const node = originalCreateNode.apply(NODEFS, arguments);
282704
+ const node = originalNodeFsCreateNode.apply(NODEFS, arguments);
282615
282705
  node.isSharedFS = true;
282616
282706
  return node;
282617
282707
  };
282618
282708
  var originalHashAddNode = FS.hashAddNode;
282619
282709
  FS.hashAddNode = function hashAddNodeIfNotSharedFS(node) {
282620
- if (typeof locking === "object" && locking?.is_shared_fs_node(node)) {
282710
+ if (node?.isSharedFS) {
282621
282711
  return;
282622
282712
  }
282623
282713
  return originalHashAddNode.apply(FS, arguments);
@@ -282635,9 +282725,9 @@ var init_php_8_32 = __esm({
282635
282725
  "use strict";
282636
282726
  import_module10 = require("module");
282637
282727
  import_path10 = __toESM(require("path"), 1);
282638
- dependencyFilename10 = import_path10.default.join(__dirname + "/asyncify", "8_3_23", "php_8_3.wasm");
282639
- dependenciesTotalSize10 = 33145262;
282640
- phpVersionString10 = "8.3.23";
282728
+ dependencyFilename10 = import_path10.default.join(__dirname + "/asyncify", "8_3_24", "php_8_3.wasm");
282729
+ dependenciesTotalSize10 = 33144925;
282730
+ phpVersionString10 = "8.3.24";
282641
282731
  }
282642
282732
  });
282643
282733
 
@@ -288464,27 +288554,21 @@ function init12(RuntimeName, PHPLoader) {
288464
288554
  1: "exclusive",
288465
288555
  2: "unlocked"
288466
288556
  },
288467
- is_shared_fs_node(node) {
288468
- if (node?.isSharedFS) {
288469
- return true;
288470
- }
288471
- if (!node?.mount?.opts?.fs?.lookupPath || !node?.mount?.type?.realPath) {
288472
- return false;
288473
- }
288474
- if (node.mount.type !== NODEFS) {
288475
- return false;
288476
- }
288477
- const vfsPath = node.mount.type.realPath(node);
288478
- try {
288479
- const underlyingNode = node.mount.opts.fs.lookupPath(vfsPath)?.node;
288480
- return !!underlyingNode?.isSharedFS;
288481
- } catch (e) {
288482
- return false;
288483
- }
288484
- },
288485
288557
  is_path_to_shared_fs(path33) {
288486
- const { node } = FS.lookupPath(path33);
288487
- return locking.is_shared_fs_node(node);
288558
+ _js_wasm_trace("is_path_to_shared_fs(%s)", path33);
288559
+ const { node } = FS.lookupPath(path33, { noent_okay: true });
288560
+ if (node.mount.type !== PROXYFS) {
288561
+ return !!node.isSharedFS;
288562
+ }
288563
+ const nodePath2 = PROXYFS.realPath(node);
288564
+ const backingFs = node?.mount?.opts?.fs;
288565
+ if (backingFs) {
288566
+ const { node: backingNode } = backingFs.lookupPath(nodePath2, {
288567
+ noent_okay: true
288568
+ });
288569
+ return !!backingNode?.isSharedFS;
288570
+ }
288571
+ return false;
288488
288572
  },
288489
288573
  get_fd_access_mode(fd) {
288490
288574
  const emscripten_F_GETFL = Number("3");
@@ -288499,8 +288583,23 @@ function init12(RuntimeName, PHPLoader) {
288499
288583
  }
288500
288584
  },
288501
288585
  get_native_path_from_vfs_path(vfsPath) {
288502
- const { node } = FS.lookupPath(vfsPath);
288503
- return NODEFS.realPath(node);
288586
+ const { node } = FS.lookupPath(vfsPath, {});
288587
+ if (node.mount.type === NODEFS) {
288588
+ return NODEFS.realPath(node);
288589
+ } else if (node.mount.type === PROXYFS) {
288590
+ const { node: backingNode, path: backingPath } = node.mount.opts.fs.lookupPath(vfsPath);
288591
+ _js_wasm_trace(
288592
+ "backingNode for %s: %s",
288593
+ vfsPath,
288594
+ backingPath,
288595
+ backingNode
288596
+ );
288597
+ return backingNode.mount.type.realPath(backingNode);
288598
+ } else {
288599
+ throw new Error(
288600
+ `Unsupported filesystem type for path ${vfsPath}`
288601
+ );
288602
+ }
288504
288603
  },
288505
288604
  check_lock_params(fd, l_type) {
288506
288605
  const emscripten_O_RDONLY = Number("0");
@@ -311645,15 +311744,15 @@ ${e}`);
311645
311744
  PHPLoader["malloc"] = _malloc;
311646
311745
  PHPLoader["free"] = typeof _free === "function" ? _free : PHPLoader["_wasm_free"];
311647
311746
  if (typeof NODEFS === "object") {
311648
- const originalCreateNode = NODEFS.createNode;
311747
+ const originalNodeFsCreateNode = NODEFS.createNode;
311649
311748
  NODEFS.createNode = function createNodeWithSharedFlag() {
311650
- const node = originalCreateNode.apply(NODEFS, arguments);
311749
+ const node = originalNodeFsCreateNode.apply(NODEFS, arguments);
311651
311750
  node.isSharedFS = true;
311652
311751
  return node;
311653
311752
  };
311654
311753
  var originalHashAddNode = FS.hashAddNode;
311655
311754
  FS.hashAddNode = function hashAddNodeIfNotSharedFS(node) {
311656
- if (typeof locking === "object" && locking?.is_shared_fs_node(node)) {
311755
+ if (node?.isSharedFS) {
311657
311756
  return;
311658
311757
  }
311659
311758
  return originalHashAddNode.apply(FS, arguments);
@@ -317500,27 +317599,21 @@ function init13(RuntimeName, PHPLoader) {
317500
317599
  1: "exclusive",
317501
317600
  2: "unlocked"
317502
317601
  },
317503
- is_shared_fs_node(node) {
317504
- if (node?.isSharedFS) {
317505
- return true;
317506
- }
317507
- if (!node?.mount?.opts?.fs?.lookupPath || !node?.mount?.type?.realPath) {
317508
- return false;
317509
- }
317510
- if (node.mount.type !== NODEFS) {
317511
- return false;
317512
- }
317513
- const vfsPath = node.mount.type.realPath(node);
317514
- try {
317515
- const underlyingNode = node.mount.opts.fs.lookupPath(vfsPath)?.node;
317516
- return !!underlyingNode?.isSharedFS;
317517
- } catch (e) {
317518
- return false;
317519
- }
317520
- },
317521
317602
  is_path_to_shared_fs(path33) {
317522
- const { node } = FS.lookupPath(path33);
317523
- return locking.is_shared_fs_node(node);
317603
+ _js_wasm_trace("is_path_to_shared_fs(%s)", path33);
317604
+ const { node } = FS.lookupPath(path33, { noent_okay: true });
317605
+ if (node.mount.type !== PROXYFS) {
317606
+ return !!node.isSharedFS;
317607
+ }
317608
+ const nodePath2 = PROXYFS.realPath(node);
317609
+ const backingFs = node?.mount?.opts?.fs;
317610
+ if (backingFs) {
317611
+ const { node: backingNode } = backingFs.lookupPath(nodePath2, {
317612
+ noent_okay: true
317613
+ });
317614
+ return !!backingNode?.isSharedFS;
317615
+ }
317616
+ return false;
317524
317617
  },
317525
317618
  get_fd_access_mode(fd) {
317526
317619
  const emscripten_F_GETFL = Number("3");
@@ -317535,8 +317628,23 @@ function init13(RuntimeName, PHPLoader) {
317535
317628
  }
317536
317629
  },
317537
317630
  get_native_path_from_vfs_path(vfsPath) {
317538
- const { node } = FS.lookupPath(vfsPath);
317539
- return NODEFS.realPath(node);
317631
+ const { node } = FS.lookupPath(vfsPath, {});
317632
+ if (node.mount.type === NODEFS) {
317633
+ return NODEFS.realPath(node);
317634
+ } else if (node.mount.type === PROXYFS) {
317635
+ const { node: backingNode, path: backingPath } = node.mount.opts.fs.lookupPath(vfsPath);
317636
+ _js_wasm_trace(
317637
+ "backingNode for %s: %s",
317638
+ vfsPath,
317639
+ backingPath,
317640
+ backingNode
317641
+ );
317642
+ return backingNode.mount.type.realPath(backingNode);
317643
+ } else {
317644
+ throw new Error(
317645
+ `Unsupported filesystem type for path ${vfsPath}`
317646
+ );
317647
+ }
317540
317648
  },
317541
317649
  check_lock_params(fd, l_type) {
317542
317650
  const emscripten_O_RDONLY = Number("0");
@@ -340681,15 +340789,15 @@ ${e}`);
340681
340789
  PHPLoader["malloc"] = _malloc;
340682
340790
  PHPLoader["free"] = typeof _free === "function" ? _free : PHPLoader["_wasm_free"];
340683
340791
  if (typeof NODEFS === "object") {
340684
- const originalCreateNode = NODEFS.createNode;
340792
+ const originalNodeFsCreateNode = NODEFS.createNode;
340685
340793
  NODEFS.createNode = function createNodeWithSharedFlag() {
340686
- const node = originalCreateNode.apply(NODEFS, arguments);
340794
+ const node = originalNodeFsCreateNode.apply(NODEFS, arguments);
340687
340795
  node.isSharedFS = true;
340688
340796
  return node;
340689
340797
  };
340690
340798
  var originalHashAddNode = FS.hashAddNode;
340691
340799
  FS.hashAddNode = function hashAddNodeIfNotSharedFS(node) {
340692
- if (typeof locking === "object" && locking?.is_shared_fs_node(node)) {
340800
+ if (node?.isSharedFS) {
340693
340801
  return;
340694
340802
  }
340695
340803
  return originalHashAddNode.apply(FS, arguments);
@@ -346536,27 +346644,21 @@ function init14(RuntimeName, PHPLoader) {
346536
346644
  1: "exclusive",
346537
346645
  2: "unlocked"
346538
346646
  },
346539
- is_shared_fs_node(node) {
346540
- if (node?.isSharedFS) {
346541
- return true;
346542
- }
346543
- if (!node?.mount?.opts?.fs?.lookupPath || !node?.mount?.type?.realPath) {
346544
- return false;
346545
- }
346546
- if (node.mount.type !== NODEFS) {
346547
- return false;
346548
- }
346549
- const vfsPath = node.mount.type.realPath(node);
346550
- try {
346551
- const underlyingNode = node.mount.opts.fs.lookupPath(vfsPath)?.node;
346552
- return !!underlyingNode?.isSharedFS;
346553
- } catch (e) {
346554
- return false;
346555
- }
346556
- },
346557
346647
  is_path_to_shared_fs(path33) {
346558
- const { node } = FS.lookupPath(path33);
346559
- return locking.is_shared_fs_node(node);
346648
+ _js_wasm_trace("is_path_to_shared_fs(%s)", path33);
346649
+ const { node } = FS.lookupPath(path33, { noent_okay: true });
346650
+ if (node.mount.type !== PROXYFS) {
346651
+ return !!node.isSharedFS;
346652
+ }
346653
+ const nodePath2 = PROXYFS.realPath(node);
346654
+ const backingFs = node?.mount?.opts?.fs;
346655
+ if (backingFs) {
346656
+ const { node: backingNode } = backingFs.lookupPath(nodePath2, {
346657
+ noent_okay: true
346658
+ });
346659
+ return !!backingNode?.isSharedFS;
346660
+ }
346661
+ return false;
346560
346662
  },
346561
346663
  get_fd_access_mode(fd) {
346562
346664
  const emscripten_F_GETFL = Number("3");
@@ -346571,8 +346673,23 @@ function init14(RuntimeName, PHPLoader) {
346571
346673
  }
346572
346674
  },
346573
346675
  get_native_path_from_vfs_path(vfsPath) {
346574
- const { node } = FS.lookupPath(vfsPath);
346575
- return NODEFS.realPath(node);
346676
+ const { node } = FS.lookupPath(vfsPath, {});
346677
+ if (node.mount.type === NODEFS) {
346678
+ return NODEFS.realPath(node);
346679
+ } else if (node.mount.type === PROXYFS) {
346680
+ const { node: backingNode, path: backingPath } = node.mount.opts.fs.lookupPath(vfsPath);
346681
+ _js_wasm_trace(
346682
+ "backingNode for %s: %s",
346683
+ vfsPath,
346684
+ backingPath,
346685
+ backingNode
346686
+ );
346687
+ return backingNode.mount.type.realPath(backingNode);
346688
+ } else {
346689
+ throw new Error(
346690
+ `Unsupported filesystem type for path ${vfsPath}`
346691
+ );
346692
+ }
346576
346693
  },
346577
346694
  check_lock_params(fd, l_type) {
346578
346695
  const emscripten_O_RDONLY = Number("0");
@@ -369704,15 +369821,15 @@ ${e}`);
369704
369821
  PHPLoader["malloc"] = _malloc;
369705
369822
  PHPLoader["free"] = typeof _free === "function" ? _free : PHPLoader["_wasm_free"];
369706
369823
  if (typeof NODEFS === "object") {
369707
- const originalCreateNode = NODEFS.createNode;
369824
+ const originalNodeFsCreateNode = NODEFS.createNode;
369708
369825
  NODEFS.createNode = function createNodeWithSharedFlag() {
369709
- const node = originalCreateNode.apply(NODEFS, arguments);
369826
+ const node = originalNodeFsCreateNode.apply(NODEFS, arguments);
369710
369827
  node.isSharedFS = true;
369711
369828
  return node;
369712
369829
  };
369713
369830
  var originalHashAddNode = FS.hashAddNode;
369714
369831
  FS.hashAddNode = function hashAddNodeIfNotSharedFS(node) {
369715
- if (typeof locking === "object" && locking?.is_shared_fs_node(node)) {
369832
+ if (node?.isSharedFS) {
369716
369833
  return;
369717
369834
  }
369718
369835
  return originalHashAddNode.apply(FS, arguments);
@@ -375559,27 +375676,21 @@ function init15(RuntimeName, PHPLoader) {
375559
375676
  1: "exclusive",
375560
375677
  2: "unlocked"
375561
375678
  },
375562
- is_shared_fs_node(node) {
375563
- if (node?.isSharedFS) {
375564
- return true;
375565
- }
375566
- if (!node?.mount?.opts?.fs?.lookupPath || !node?.mount?.type?.realPath) {
375567
- return false;
375568
- }
375569
- if (node.mount.type !== NODEFS) {
375570
- return false;
375571
- }
375572
- const vfsPath = node.mount.type.realPath(node);
375573
- try {
375574
- const underlyingNode = node.mount.opts.fs.lookupPath(vfsPath)?.node;
375575
- return !!underlyingNode?.isSharedFS;
375576
- } catch (e) {
375577
- return false;
375578
- }
375579
- },
375580
375679
  is_path_to_shared_fs(path33) {
375581
- const { node } = FS.lookupPath(path33);
375582
- return locking.is_shared_fs_node(node);
375680
+ _js_wasm_trace("is_path_to_shared_fs(%s)", path33);
375681
+ const { node } = FS.lookupPath(path33, { noent_okay: true });
375682
+ if (node.mount.type !== PROXYFS) {
375683
+ return !!node.isSharedFS;
375684
+ }
375685
+ const nodePath2 = PROXYFS.realPath(node);
375686
+ const backingFs = node?.mount?.opts?.fs;
375687
+ if (backingFs) {
375688
+ const { node: backingNode } = backingFs.lookupPath(nodePath2, {
375689
+ noent_okay: true
375690
+ });
375691
+ return !!backingNode?.isSharedFS;
375692
+ }
375693
+ return false;
375583
375694
  },
375584
375695
  get_fd_access_mode(fd) {
375585
375696
  const emscripten_F_GETFL = Number("3");
@@ -375594,8 +375705,23 @@ function init15(RuntimeName, PHPLoader) {
375594
375705
  }
375595
375706
  },
375596
375707
  get_native_path_from_vfs_path(vfsPath) {
375597
- const { node } = FS.lookupPath(vfsPath);
375598
- return NODEFS.realPath(node);
375708
+ const { node } = FS.lookupPath(vfsPath, {});
375709
+ if (node.mount.type === NODEFS) {
375710
+ return NODEFS.realPath(node);
375711
+ } else if (node.mount.type === PROXYFS) {
375712
+ const { node: backingNode, path: backingPath } = node.mount.opts.fs.lookupPath(vfsPath);
375713
+ _js_wasm_trace(
375714
+ "backingNode for %s: %s",
375715
+ vfsPath,
375716
+ backingPath,
375717
+ backingNode
375718
+ );
375719
+ return backingNode.mount.type.realPath(backingNode);
375720
+ } else {
375721
+ throw new Error(
375722
+ `Unsupported filesystem type for path ${vfsPath}`
375723
+ );
375724
+ }
375599
375725
  },
375600
375726
  check_lock_params(fd, l_type) {
375601
375727
  const emscripten_O_RDONLY = Number("0");
@@ -398714,15 +398840,15 @@ ${e}`);
398714
398840
  PHPLoader["malloc"] = _malloc;
398715
398841
  PHPLoader["free"] = typeof _free === "function" ? _free : PHPLoader["_wasm_free"];
398716
398842
  if (typeof NODEFS === "object") {
398717
- const originalCreateNode = NODEFS.createNode;
398843
+ const originalNodeFsCreateNode = NODEFS.createNode;
398718
398844
  NODEFS.createNode = function createNodeWithSharedFlag() {
398719
- const node = originalCreateNode.apply(NODEFS, arguments);
398845
+ const node = originalNodeFsCreateNode.apply(NODEFS, arguments);
398720
398846
  node.isSharedFS = true;
398721
398847
  return node;
398722
398848
  };
398723
398849
  var originalHashAddNode = FS.hashAddNode;
398724
398850
  FS.hashAddNode = function hashAddNodeIfNotSharedFS(node) {
398725
- if (typeof locking === "object" && locking?.is_shared_fs_node(node)) {
398851
+ if (node?.isSharedFS) {
398726
398852
  return;
398727
398853
  }
398728
398854
  return originalHashAddNode.apply(FS, arguments);
@@ -404569,27 +404695,21 @@ function init16(RuntimeName, PHPLoader) {
404569
404695
  1: "exclusive",
404570
404696
  2: "unlocked"
404571
404697
  },
404572
- is_shared_fs_node(node) {
404573
- if (node?.isSharedFS) {
404574
- return true;
404575
- }
404576
- if (!node?.mount?.opts?.fs?.lookupPath || !node?.mount?.type?.realPath) {
404577
- return false;
404578
- }
404579
- if (node.mount.type !== NODEFS) {
404580
- return false;
404581
- }
404582
- const vfsPath = node.mount.type.realPath(node);
404583
- try {
404584
- const underlyingNode = node.mount.opts.fs.lookupPath(vfsPath)?.node;
404585
- return !!underlyingNode?.isSharedFS;
404586
- } catch (e) {
404587
- return false;
404588
- }
404589
- },
404590
404698
  is_path_to_shared_fs(path33) {
404591
- const { node } = FS.lookupPath(path33);
404592
- return locking.is_shared_fs_node(node);
404699
+ _js_wasm_trace("is_path_to_shared_fs(%s)", path33);
404700
+ const { node } = FS.lookupPath(path33, { noent_okay: true });
404701
+ if (node.mount.type !== PROXYFS) {
404702
+ return !!node.isSharedFS;
404703
+ }
404704
+ const nodePath2 = PROXYFS.realPath(node);
404705
+ const backingFs = node?.mount?.opts?.fs;
404706
+ if (backingFs) {
404707
+ const { node: backingNode } = backingFs.lookupPath(nodePath2, {
404708
+ noent_okay: true
404709
+ });
404710
+ return !!backingNode?.isSharedFS;
404711
+ }
404712
+ return false;
404593
404713
  },
404594
404714
  get_fd_access_mode(fd) {
404595
404715
  const emscripten_F_GETFL = Number("3");
@@ -404604,8 +404724,23 @@ function init16(RuntimeName, PHPLoader) {
404604
404724
  }
404605
404725
  },
404606
404726
  get_native_path_from_vfs_path(vfsPath) {
404607
- const { node } = FS.lookupPath(vfsPath);
404608
- return NODEFS.realPath(node);
404727
+ const { node } = FS.lookupPath(vfsPath, {});
404728
+ if (node.mount.type === NODEFS) {
404729
+ return NODEFS.realPath(node);
404730
+ } else if (node.mount.type === PROXYFS) {
404731
+ const { node: backingNode, path: backingPath } = node.mount.opts.fs.lookupPath(vfsPath);
404732
+ _js_wasm_trace(
404733
+ "backingNode for %s: %s",
404734
+ vfsPath,
404735
+ backingPath,
404736
+ backingNode
404737
+ );
404738
+ return backingNode.mount.type.realPath(backingNode);
404739
+ } else {
404740
+ throw new Error(
404741
+ `Unsupported filesystem type for path ${vfsPath}`
404742
+ );
404743
+ }
404609
404744
  },
404610
404745
  check_lock_params(fd, l_type) {
404611
404746
  const emscripten_O_RDONLY = Number("0");
@@ -427711,15 +427846,15 @@ ${e}`);
427711
427846
  PHPLoader["malloc"] = _malloc;
427712
427847
  PHPLoader["free"] = typeof _free === "function" ? _free : PHPLoader["_wasm_free"];
427713
427848
  if (typeof NODEFS === "object") {
427714
- const originalCreateNode = NODEFS.createNode;
427849
+ const originalNodeFsCreateNode = NODEFS.createNode;
427715
427850
  NODEFS.createNode = function createNodeWithSharedFlag() {
427716
- const node = originalCreateNode.apply(NODEFS, arguments);
427851
+ const node = originalNodeFsCreateNode.apply(NODEFS, arguments);
427717
427852
  node.isSharedFS = true;
427718
427853
  return node;
427719
427854
  };
427720
427855
  var originalHashAddNode = FS.hashAddNode;
427721
427856
  FS.hashAddNode = function hashAddNodeIfNotSharedFS(node) {
427722
- if (typeof locking === "object" && locking?.is_shared_fs_node(node)) {
427857
+ if (node?.isSharedFS) {
427723
427858
  return;
427724
427859
  }
427725
427860
  return originalHashAddNode.apply(FS, arguments);
@@ -433566,27 +433701,21 @@ function init17(RuntimeName, PHPLoader) {
433566
433701
  1: "exclusive",
433567
433702
  2: "unlocked"
433568
433703
  },
433569
- is_shared_fs_node(node) {
433570
- if (node?.isSharedFS) {
433571
- return true;
433572
- }
433573
- if (!node?.mount?.opts?.fs?.lookupPath || !node?.mount?.type?.realPath) {
433574
- return false;
433575
- }
433576
- if (node.mount.type !== NODEFS) {
433577
- return false;
433578
- }
433579
- const vfsPath = node.mount.type.realPath(node);
433580
- try {
433581
- const underlyingNode = node.mount.opts.fs.lookupPath(vfsPath)?.node;
433582
- return !!underlyingNode?.isSharedFS;
433583
- } catch (e) {
433584
- return false;
433585
- }
433586
- },
433587
433704
  is_path_to_shared_fs(path33) {
433588
- const { node } = FS.lookupPath(path33);
433589
- return locking.is_shared_fs_node(node);
433705
+ _js_wasm_trace("is_path_to_shared_fs(%s)", path33);
433706
+ const { node } = FS.lookupPath(path33, { noent_okay: true });
433707
+ if (node.mount.type !== PROXYFS) {
433708
+ return !!node.isSharedFS;
433709
+ }
433710
+ const nodePath2 = PROXYFS.realPath(node);
433711
+ const backingFs = node?.mount?.opts?.fs;
433712
+ if (backingFs) {
433713
+ const { node: backingNode } = backingFs.lookupPath(nodePath2, {
433714
+ noent_okay: true
433715
+ });
433716
+ return !!backingNode?.isSharedFS;
433717
+ }
433718
+ return false;
433590
433719
  },
433591
433720
  get_fd_access_mode(fd) {
433592
433721
  const emscripten_F_GETFL = Number("3");
@@ -433601,8 +433730,23 @@ function init17(RuntimeName, PHPLoader) {
433601
433730
  }
433602
433731
  },
433603
433732
  get_native_path_from_vfs_path(vfsPath) {
433604
- const { node } = FS.lookupPath(vfsPath);
433605
- return NODEFS.realPath(node);
433733
+ const { node } = FS.lookupPath(vfsPath, {});
433734
+ if (node.mount.type === NODEFS) {
433735
+ return NODEFS.realPath(node);
433736
+ } else if (node.mount.type === PROXYFS) {
433737
+ const { node: backingNode, path: backingPath } = node.mount.opts.fs.lookupPath(vfsPath);
433738
+ _js_wasm_trace(
433739
+ "backingNode for %s: %s",
433740
+ vfsPath,
433741
+ backingPath,
433742
+ backingNode
433743
+ );
433744
+ return backingNode.mount.type.realPath(backingNode);
433745
+ } else {
433746
+ throw new Error(
433747
+ `Unsupported filesystem type for path ${vfsPath}`
433748
+ );
433749
+ }
433606
433750
  },
433607
433751
  check_lock_params(fd, l_type) {
433608
433752
  const emscripten_O_RDONLY = Number("0");
@@ -456694,15 +456838,15 @@ ${e}`);
456694
456838
  PHPLoader["malloc"] = _malloc;
456695
456839
  PHPLoader["free"] = typeof _free === "function" ? _free : PHPLoader["_wasm_free"];
456696
456840
  if (typeof NODEFS === "object") {
456697
- const originalCreateNode = NODEFS.createNode;
456841
+ const originalNodeFsCreateNode = NODEFS.createNode;
456698
456842
  NODEFS.createNode = function createNodeWithSharedFlag() {
456699
- const node = originalCreateNode.apply(NODEFS, arguments);
456843
+ const node = originalNodeFsCreateNode.apply(NODEFS, arguments);
456700
456844
  node.isSharedFS = true;
456701
456845
  return node;
456702
456846
  };
456703
456847
  var originalHashAddNode = FS.hashAddNode;
456704
456848
  FS.hashAddNode = function hashAddNodeIfNotSharedFS(node) {
456705
- if (typeof locking === "object" && locking?.is_shared_fs_node(node)) {
456849
+ if (node?.isSharedFS) {
456706
456850
  return;
456707
456851
  }
456708
456852
  return originalHashAddNode.apply(FS, arguments);
@@ -457831,12 +457975,7 @@ var FileLock = class _FileLock {
457831
457975
  }
457832
457976
  return true;
457833
457977
  }
457834
- if (this.doesAConflictingLockExist({
457835
- type: op.type,
457836
- start: 0n,
457837
- end: MAX_64BIT_OFFSET,
457838
- pid: op.pid
457839
- })) {
457978
+ if (this.isThereAConflictWithRequestedWholeFileLock(op)) {
457840
457979
  return false;
457841
457980
  }
457842
457981
  if (!this.ensureCompatibleNativeLock({
@@ -457907,7 +458046,7 @@ var FileLock = class _FileLock {
457907
458046
  }
457908
458047
  return true;
457909
458048
  }
457910
- if (this.doesAConflictingLockExist(requestedLock)) {
458049
+ if (this.isThereAConflictWithRequestedRangeLock(requestedLock)) {
457911
458050
  return false;
457912
458051
  }
457913
458052
  if (!this.ensureCompatibleNativeLock({
@@ -458055,14 +458194,61 @@ var FileLock = class _FileLock {
458055
458194
  }
458056
458195
  }
458057
458196
  /**
458058
- * Check if a conflicting lock exists.
458197
+ * Check if a lock exists that conflicts with the requested range lock.
458059
458198
  *
458060
458199
  * @param requestedLock The desired byte range lock.
458061
458200
  * @returns True if a conflicting lock exists, false otherwise.
458062
458201
  */
458063
- doesAConflictingLockExist(requestedLock) {
458202
+ isThereAConflictWithRequestedRangeLock(requestedLock) {
458064
458203
  return this.findFirstConflictingByteRangeLock(requestedLock) !== void 0;
458065
458204
  }
458205
+ /**
458206
+ * Check if a lock exists that conflicts with the requested whole-file lock.
458207
+ *
458208
+ * @param requestedLock The desired whole-file lock.
458209
+ * @returns True if a conflicting lock exists, false otherwise.
458210
+ */
458211
+ isThereAConflictWithRequestedWholeFileLock(requestedLock) {
458212
+ if (requestedLock.type === "exclusive") {
458213
+ if (this.wholeFileLock.type === "exclusive" && (this.wholeFileLock.fd !== requestedLock.fd || this.wholeFileLock.pid !== requestedLock.pid)) {
458214
+ return true;
458215
+ }
458216
+ if (this.wholeFileLock.type === "shared" && Array.from(this.wholeFileLock.pidFds).some(
458217
+ ([pid]) => pid !== requestedLock.pid
458218
+ )) {
458219
+ return true;
458220
+ }
458221
+ const overlappingLocks = this.rangeLocks.findOverlapping({
458222
+ type: "unlocked",
458223
+ start: 0n,
458224
+ end: MAX_64BIT_OFFSET,
458225
+ pid: -1
458226
+ });
458227
+ if (overlappingLocks.length > 0) {
458228
+ return true;
458229
+ }
458230
+ return false;
458231
+ }
458232
+ if (requestedLock.type === "shared") {
458233
+ if (this.wholeFileLock.type === "exclusive" && this.wholeFileLock.pid !== requestedLock.pid) {
458234
+ return true;
458235
+ }
458236
+ const overlappingLocks = this.rangeLocks.findOverlapping({
458237
+ type: "unlocked",
458238
+ start: 0n,
458239
+ end: MAX_64BIT_OFFSET,
458240
+ pid: -1
458241
+ });
458242
+ const exclusiveRangeLocks = overlappingLocks.filter(
458243
+ (lock) => lock.type === "exclusive"
458244
+ );
458245
+ if (exclusiveRangeLocks.length > 0) {
458246
+ return true;
458247
+ }
458248
+ return false;
458249
+ }
458250
+ return false;
458251
+ }
458066
458252
  };
458067
458253
  var IntervalNode = class {
458068
458254
  constructor(range) {