@php-wasm/node-7-4 3.1.62 → 3.1.63

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.
Binary file
@@ -15,7 +15,7 @@ const currentDirPath =
15
15
  : path.dirname(fileURLToPath(import.meta.url));
16
16
  const dependencyFilename = path.join(currentDirPath, '7_4_33', 'php_7_4.wasm');
17
17
  export { dependencyFilename };
18
- export const dependenciesTotalSize = 18763147;
18
+ export const dependenciesTotalSize = 18765542;
19
19
  const phpVersionString = '7.4.33';
20
20
  export function init(RuntimeName, PHPLoader) {
21
21
  // The rest of the code comes from the built php.js file and esm-suffix.js
@@ -9361,13 +9361,11 @@ export function init(RuntimeName, PHPLoader) {
9361
9361
  envLength
9362
9362
  ) {
9363
9363
  if (!command) {
9364
- ___errno_location(ERRNO_CODES.EINVAL);
9365
- return -1;
9364
+ return -ERRNO_CODES.EINVAL;
9366
9365
  }
9367
9366
  const cmdstr = UTF8ToString(command);
9368
9367
  if (!cmdstr.length) {
9369
- ___errno_location(ERRNO_CODES.EINVAL);
9370
- return -1;
9368
+ return -ERRNO_CODES.EINVAL;
9371
9369
  }
9372
9370
  let argsArray = [];
9373
9371
  if (argsLength) {
@@ -9427,13 +9425,11 @@ export function init(RuntimeName, PHPLoader) {
9427
9425
  }
9428
9426
  } catch (e) {
9429
9427
  if (e.code === 'SPAWN_UNSUPPORTED') {
9430
- ___errno_location(ERRNO_CODES.ENOSYS);
9431
- return -1;
9428
+ return -ERRNO_CODES.ENOSYS;
9432
9429
  }
9433
9430
  if (typeof FS == 'undefined' || !(e.name === 'ErrnoError'))
9434
9431
  throw e;
9435
- ___errno_location(e.code);
9436
- return -1;
9432
+ return -e.errno;
9437
9433
  }
9438
9434
  const ProcInfo = {
9439
9435
  pid: cp.pid,
@@ -9447,20 +9443,31 @@ export function init(RuntimeName, PHPLoader) {
9447
9443
  stderrChildFd = std[2]?.child,
9448
9444
  stderrParentFd = std[2]?.parent;
9449
9445
  const detachPipeDataListeners = [];
9450
- cp.on('exit', function (code) {
9446
+ /**
9447
+ * Closes the child ends of the pipes so a blocking fread() on the
9448
+ * parent end sees a broken pipe instead of polling forever. Runs on
9449
+ * 'exit' and when the spawn wait fails, because a failed spawn may
9450
+ * never emit 'exit'.
9451
+ *
9452
+ * Runs at most once. After the first call, PHP may reuse these fd
9453
+ * numbers for unrelated streams that a late 'exit' must not close.
9454
+ */ let childPipesClosed = false;
9455
+ const closeChildPipes = function () {
9456
+ if (childPipesClosed) {
9457
+ return;
9458
+ }
9459
+ childPipesClosed = true;
9451
9460
  for (const detach of detachPipeDataListeners) {
9452
9461
  detach();
9453
9462
  }
9454
- for (const fd of [
9455
- // The child process exited. Let's clean up its output streams:
9456
- stdoutChildFd,
9457
- stderrChildFd,
9458
- stdinChildFd,
9459
- ]) {
9463
+ for (const fd of [stdoutChildFd, stderrChildFd, stdinChildFd]) {
9460
9464
  if (FS.streams[fd] && !FS.isClosed(FS.streams[fd])) {
9461
9465
  FS.close(FS.streams[fd]);
9462
9466
  }
9463
9467
  }
9468
+ };
9469
+ cp.on('exit', function (code) {
9470
+ closeChildPipes();
9464
9471
  ProcInfo.exitCode = code;
9465
9472
  ProcInfo.exited = true;
9466
9473
  });
@@ -9568,6 +9575,10 @@ export function init(RuntimeName, PHPLoader) {
9568
9575
  // Process already started. Even if it exited early, PHP still
9569
9576
  // needs to know about the pid and clean up the resources.
9570
9577
  console.error(e);
9578
+ closeChildPipes();
9579
+ if (!ProcInfo.pid) {
9580
+ return -(ERRNO_CODES[e.code] ?? ERRNO_CODES.ECHILD);
9581
+ }
9571
9582
  return ProcInfo.pid;
9572
9583
  }
9573
9584
  // Now we want to pass data from the STDIN source supplied by PHP
@@ -10645,10 +10656,7 @@ export function init(RuntimeName, PHPLoader) {
10645
10656
  return ERRNO_CODES.EWOULDBLOCK;
10646
10657
  }
10647
10658
  return returnCallback(async (wakeUp) => {
10648
- var retries = 0;
10649
10659
  var interval = 50;
10650
- var timeout = 5e3;
10651
- var maxRetries = timeout / interval;
10652
10660
  while (true) {
10653
10661
  var returnCode;
10654
10662
  var stream;
@@ -10672,7 +10680,6 @@ export function init(RuntimeName, PHPLoader) {
10672
10680
  return wakeUp(0);
10673
10681
  }
10674
10682
  if (
10675
- ++retries > maxRetries ||
10676
10683
  !stream ||
10677
10684
  FS.isClosed(stream) ||
10678
10685
  returnCode !== ERRNO_CODES.EWOULDBLOCK ||
@@ -10923,7 +10930,14 @@ export function init(RuntimeName, PHPLoader) {
10923
10930
  _zend_set_user_opcode_handler,
10924
10931
  _zend_get_user_opcode_handler,
10925
10932
  _zend_get_zval_ptr,
10933
+ _munmap,
10934
+ _fiprintf,
10926
10935
  _free,
10936
+ _dlopen,
10937
+ _dlsym,
10938
+ _dlclose,
10939
+ _strcmp,
10940
+ _getenv,
10927
10941
  _strlen,
10928
10942
  _memcmp,
10929
10943
  _strtoll,
@@ -10934,12 +10948,6 @@ export function init(RuntimeName, PHPLoader) {
10934
10948
  _memchr,
10935
10949
  _strrchr,
10936
10950
  _snprintf,
10937
- _dlopen,
10938
- _fiprintf,
10939
- _dlsym,
10940
- _dlclose,
10941
- _strcmp,
10942
- _getenv,
10943
10951
  _strncasecmp,
10944
10952
  ___wasm_setjmp,
10945
10953
  ___wasm_setjmp_test,
@@ -10955,7 +10963,6 @@ export function init(RuntimeName, PHPLoader) {
10955
10963
  ___errno_location,
10956
10964
  _strtoul,
10957
10965
  _write,
10958
- _munmap,
10959
10966
  _fwrite,
10960
10967
  _mmap,
10961
10968
  _getcwd,
@@ -11104,13 +11111,13 @@ export function init(RuntimeName, PHPLoader) {
11104
11111
  __ZNSt20bad_array_new_lengthD1Ev,
11105
11112
  __ZNSt12length_errorD1Ev,
11106
11113
  dynCall_vi,
11107
- dynCall_iiii,
11114
+ dynCall_vii,
11115
+ dynCall_viii,
11108
11116
  dynCall_ii,
11117
+ dynCall_iiii,
11109
11118
  dynCall_iiiiii,
11110
11119
  dynCall_iiiii,
11111
- dynCall_vii,
11112
11120
  dynCall_iii,
11113
- dynCall_viii,
11114
11121
  dynCall_viiiii,
11115
11122
  dynCall_iiiiiii,
11116
11123
  dynCall_i,
@@ -11598,7 +11605,14 @@ export function init(RuntimeName, PHPLoader) {
11598
11605
  ] = wasmExports['zend_get_user_opcode_handler'];
11599
11606
  _zend_get_zval_ptr = Module['_zend_get_zval_ptr'] =
11600
11607
  wasmExports['zend_get_zval_ptr'];
11608
+ _munmap = Module['_munmap'] = wasmExports['munmap'];
11609
+ _fiprintf = Module['_fiprintf'] = wasmExports['fiprintf'];
11601
11610
  _free = Module['_free'] = wasmExports['free'];
11611
+ _dlopen = Module['_dlopen'] = wasmExports['dlopen'];
11612
+ _dlsym = Module['_dlsym'] = wasmExports['dlsym'];
11613
+ _dlclose = Module['_dlclose'] = wasmExports['dlclose'];
11614
+ _strcmp = Module['_strcmp'] = wasmExports['strcmp'];
11615
+ _getenv = Module['_getenv'] = wasmExports['getenv'];
11602
11616
  _strlen = Module['_strlen'] = wasmExports['strlen'];
11603
11617
  _memcmp = Module['_memcmp'] = wasmExports['memcmp'];
11604
11618
  _strtoll = Module['_strtoll'] = wasmExports['strtoll'];
@@ -11612,12 +11626,6 @@ export function init(RuntimeName, PHPLoader) {
11612
11626
  _memchr = Module['_memchr'] = wasmExports['memchr'];
11613
11627
  _strrchr = Module['_strrchr'] = wasmExports['strrchr'];
11614
11628
  _snprintf = Module['_snprintf'] = wasmExports['snprintf'];
11615
- _dlopen = Module['_dlopen'] = wasmExports['dlopen'];
11616
- _fiprintf = Module['_fiprintf'] = wasmExports['fiprintf'];
11617
- _dlsym = Module['_dlsym'] = wasmExports['dlsym'];
11618
- _dlclose = Module['_dlclose'] = wasmExports['dlclose'];
11619
- _strcmp = Module['_strcmp'] = wasmExports['strcmp'];
11620
- _getenv = Module['_getenv'] = wasmExports['getenv'];
11621
11629
  _strncasecmp = Module['_strncasecmp'] = wasmExports['strncasecmp'];
11622
11630
  ___wasm_setjmp = Module['___wasm_setjmp'] =
11623
11631
  wasmExports['__wasm_setjmp'];
@@ -11637,7 +11645,6 @@ export function init(RuntimeName, PHPLoader) {
11637
11645
  wasmExports['__errno_location'];
11638
11646
  _strtoul = Module['_strtoul'] = wasmExports['strtoul'];
11639
11647
  _write = Module['_write'] = wasmExports['write'];
11640
- _munmap = Module['_munmap'] = wasmExports['munmap'];
11641
11648
  _fwrite = Module['_fwrite'] = wasmExports['fwrite'];
11642
11649
  _mmap = Module['_mmap'] = wasmExports['mmap'];
11643
11650
  _getcwd = Module['_getcwd'] = wasmExports['getcwd'];
@@ -11838,13 +11845,13 @@ export function init(RuntimeName, PHPLoader) {
11838
11845
  __ZNSt12length_errorD1Ev = Module['__ZNSt12length_errorD1Ev'] =
11839
11846
  wasmExports['_ZNSt12length_errorD1Ev'];
11840
11847
  dynCall_vi = dynCalls['vi'] = wasmExports['dynCall_vi'];
11841
- dynCall_iiii = dynCalls['iiii'] = wasmExports['dynCall_iiii'];
11848
+ dynCall_vii = dynCalls['vii'] = wasmExports['dynCall_vii'];
11849
+ dynCall_viii = dynCalls['viii'] = wasmExports['dynCall_viii'];
11842
11850
  dynCall_ii = dynCalls['ii'] = wasmExports['dynCall_ii'];
11851
+ dynCall_iiii = dynCalls['iiii'] = wasmExports['dynCall_iiii'];
11843
11852
  dynCall_iiiiii = dynCalls['iiiiii'] = wasmExports['dynCall_iiiiii'];
11844
11853
  dynCall_iiiii = dynCalls['iiiii'] = wasmExports['dynCall_iiiii'];
11845
- dynCall_vii = dynCalls['vii'] = wasmExports['dynCall_vii'];
11846
11854
  dynCall_iii = dynCalls['iii'] = wasmExports['dynCall_iii'];
11847
- dynCall_viii = dynCalls['viii'] = wasmExports['dynCall_viii'];
11848
11855
  dynCall_viiiii = dynCalls['viiiii'] = wasmExports['dynCall_viiiii'];
11849
11856
  dynCall_iiiiiii = dynCalls['iiiiiii'] = wasmExports['dynCall_iiiiiii'];
11850
11857
  dynCall_i = dynCalls['i'] = wasmExports['dynCall_i'];
@@ -11934,102 +11941,102 @@ export function init(RuntimeName, PHPLoader) {
11934
11941
  wasmExports['__indirect_function_table'];
11935
11942
  }
11936
11943
 
11937
- var _core_globals = (Module['_core_globals'] = 11043520);
11944
+ var _core_globals = (Module['_core_globals'] = 11043296);
11938
11945
 
11939
- var _php_ini_opened_path = (Module['_php_ini_opened_path'] = 10973512);
11946
+ var _php_ini_opened_path = (Module['_php_ini_opened_path'] = 10973280);
11940
11947
 
11941
- var _php_ini_scanned_path = (Module['_php_ini_scanned_path'] = 10973516);
11948
+ var _php_ini_scanned_path = (Module['_php_ini_scanned_path'] = 10973284);
11942
11949
 
11943
- var _php_ini_scanned_files = (Module['_php_ini_scanned_files'] = 10973520);
11950
+ var _php_ini_scanned_files = (Module['_php_ini_scanned_files'] = 10973288);
11944
11951
 
11945
- var _sapi_module = (Module['_sapi_module'] = 10987288);
11952
+ var _sapi_module = (Module['_sapi_module'] = 10987064);
11946
11953
 
11947
- var _sapi_globals = (Module['_sapi_globals'] = 10987432);
11954
+ var _sapi_globals = (Module['_sapi_globals'] = 10987208);
11948
11955
 
11949
- var _compiler_globals = (Module['_compiler_globals'] = 10971776);
11956
+ var _compiler_globals = (Module['_compiler_globals'] = 10971544);
11950
11957
 
11951
- var _executor_globals = (Module['_executor_globals'] = 10972192);
11958
+ var _executor_globals = (Module['_executor_globals'] = 10971960);
11952
11959
 
11953
- var _zend_compile_file = (Module['_zend_compile_file'] = 10973328);
11960
+ var _zend_compile_file = (Module['_zend_compile_file'] = 10973096);
11954
11961
 
11955
- var _zend_execute_ex = (Module['_zend_execute_ex'] = 10967464);
11962
+ var _zend_execute_ex = (Module['_zend_execute_ex'] = 10966072);
11956
11963
 
11957
- var _zend_execute_internal = (Module['_zend_execute_internal'] = 10967468);
11964
+ var _zend_execute_internal = (Module['_zend_execute_internal'] = 10966076);
11958
11965
 
11959
- var _zend_write = (Module['_zend_write'] = 10971712);
11966
+ var _zend_write = (Module['_zend_write'] = 10971480);
11960
11967
 
11961
- var _zend_error_cb = (Module['_zend_error_cb'] = 10971720);
11968
+ var _zend_error_cb = (Module['_zend_error_cb'] = 10971488);
11962
11969
 
11963
- var _zend_post_startup_cb = (Module['_zend_post_startup_cb'] = 10971692);
11970
+ var _zend_post_startup_cb = (Module['_zend_post_startup_cb'] = 10971460);
11964
11971
 
11965
- var _module_registry = (Module['_module_registry'] = 10964112);
11972
+ var _module_registry = (Module['_module_registry'] = 10966080);
11966
11973
 
11967
- var _zend_ce_traversable = (Module['_zend_ce_traversable'] = 10963760);
11974
+ var _zend_ce_traversable = (Module['_zend_ce_traversable'] = 10963528);
11968
11975
 
11969
- var _zend_ce_iterator = (Module['_zend_ce_iterator'] = 10963768);
11976
+ var _zend_ce_iterator = (Module['_zend_ce_iterator'] = 10963536);
11970
11977
 
11971
- var _zend_ce_countable = (Module['_zend_ce_countable'] = 10963780);
11978
+ var _zend_ce_countable = (Module['_zend_ce_countable'] = 10963548);
11972
11979
 
11973
- var _zend_ce_exception = (Module['_zend_ce_exception'] = 10963500);
11980
+ var _zend_ce_exception = (Module['_zend_ce_exception'] = 10963268);
11974
11981
 
11975
- var _zend_ce_error = (Module['_zend_ce_error'] = 10963628);
11982
+ var _zend_ce_error = (Module['_zend_ce_error'] = 10963396);
11976
11983
 
11977
11984
  var _zend_throw_exception_hook = (Module['_zend_throw_exception_hook'] =
11978
- 10963492);
11985
+ 10963260);
11979
11986
 
11980
- var _gc_collect_cycles = (Module['_gc_collect_cycles'] = 10963940);
11987
+ var _gc_collect_cycles = (Module['_gc_collect_cycles'] = 10967236);
11981
11988
 
11982
- var _zend_ce_closure = (Module['_zend_ce_closure'] = 10963640);
11989
+ var _zend_ce_closure = (Module['_zend_ce_closure'] = 10963408);
11983
11990
 
11984
- var _zend_empty_string = (Module['_zend_empty_string'] = 10961824);
11991
+ var _zend_empty_string = (Module['_zend_empty_string'] = 10961640);
11985
11992
 
11986
11993
  var _zend_string_init_interned = (Module['_zend_string_init_interned'] =
11987
- 10961892);
11994
+ 10961708);
11988
11995
 
11989
- var _std_object_handlers = (Module['_std_object_handlers'] = 10207160);
11996
+ var _std_object_handlers = (Module['_std_object_handlers'] = 10207080);
11990
11997
 
11991
- var _zend_pass_function = (Module['_zend_pass_function'] = 10210008);
11998
+ var _zend_pass_function = (Module['_zend_pass_function'] = 10209816);
11992
11999
 
11993
12000
  var ___memory_base = (Module['___memory_base'] = 0);
11994
12001
 
11995
12002
  var ___table_base = (Module['___table_base'] = 1);
11996
12003
 
11997
- var _stderr = (Module['_stderr'] = 10955008);
12004
+ var _stderr = (Module['_stderr'] = 10954880);
11998
12005
 
11999
- var ___THREW__ = (Module['___THREW__'] = 11092212);
12006
+ var ___THREW__ = (Module['___THREW__'] = 11091988);
12000
12007
 
12001
- var ___threwValue = (Module['___threwValue'] = 11092216);
12008
+ var ___threwValue = (Module['___threwValue'] = 11091992);
12002
12009
 
12003
- var _stdout = (Module['_stdout'] = 10955312);
12010
+ var _stdout = (Module['_stdout'] = 10955184);
12004
12011
 
12005
- var _timezone = (Module['_timezone'] = 11078976);
12012
+ var _timezone = (Module['_timezone'] = 11078752);
12006
12013
 
12007
- var _tzname = (Module['_tzname'] = 11078984);
12014
+ var _tzname = (Module['_tzname'] = 11078760);
12008
12015
 
12009
- var ___heap_base = 12140896;
12016
+ var ___heap_base = 12140672;
12010
12017
 
12011
12018
  var __ZNSt3__25ctypeIcE2idE = (Module['__ZNSt3__25ctypeIcE2idE'] =
12012
- 11092300);
12019
+ 11092076);
12013
12020
 
12014
12021
  var __ZTVN10__cxxabiv120__si_class_type_infoE = (Module[
12015
12022
  '__ZTVN10__cxxabiv120__si_class_type_infoE'
12016
- ] = 10955560);
12023
+ ] = 10955432);
12017
12024
 
12018
12025
  var __ZTVN10__cxxabiv117__class_type_infoE = (Module[
12019
12026
  '__ZTVN10__cxxabiv117__class_type_infoE'
12020
- ] = 10955520);
12027
+ ] = 10955392);
12021
12028
 
12022
12029
  var __ZTVN10__cxxabiv121__vmi_class_type_infoE = (Module[
12023
12030
  '__ZTVN10__cxxabiv121__vmi_class_type_infoE'
12024
- ] = 10955612);
12031
+ ] = 10955484);
12025
12032
 
12026
12033
  var __ZTISt20bad_array_new_length = (Module[
12027
12034
  '__ZTISt20bad_array_new_length'
12028
- ] = 10955684);
12035
+ ] = 10955556);
12029
12036
 
12030
- var __ZTVSt12length_error = (Module['__ZTVSt12length_error'] = 10955728);
12037
+ var __ZTVSt12length_error = (Module['__ZTVSt12length_error'] = 10955600);
12031
12038
 
12032
- var __ZTISt12length_error = (Module['__ZTISt12length_error'] = 10955748);
12039
+ var __ZTISt12length_error = (Module['__ZTISt12length_error'] = 10955620);
12033
12040
 
12034
12041
  var wasmImports = {
12035
12042
  /** @export */ __assert_fail: ___assert_fail,
@@ -12199,17 +12206,6 @@ export function init(RuntimeName, PHPLoader) {
12199
12206
  }
12200
12207
  }
12201
12208
 
12202
- function invoke_iii(index, a1, a2) {
12203
- var sp = stackSave();
12204
- try {
12205
- return dynCalls['iii'](index, a1, a2);
12206
- } catch (e) {
12207
- stackRestore(sp);
12208
- if (e !== e + 0) throw e;
12209
- _setThrew(1, 0);
12210
- }
12211
- }
12212
-
12213
12209
  function invoke_vii(index, a1, a2) {
12214
12210
  var sp = stackSave();
12215
12211
  try {
@@ -12265,6 +12261,17 @@ export function init(RuntimeName, PHPLoader) {
12265
12261
  }
12266
12262
  }
12267
12263
 
12264
+ function invoke_iii(index, a1, a2) {
12265
+ var sp = stackSave();
12266
+ try {
12267
+ return dynCalls['iii'](index, a1, a2);
12268
+ } catch (e) {
12269
+ stackRestore(sp);
12270
+ if (e !== e + 0) throw e;
12271
+ _setThrew(1, 0);
12272
+ }
12273
+ }
12274
+
12268
12275
  function invoke_viiii(index, a1, a2, a3, a4) {
12269
12276
  var sp = stackSave();
12270
12277
  try {
Binary file