@php-wasm/web-7-4 3.1.61 → 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.
- package/asyncify/7_4_33/php_7_4.wasm +0 -0
- package/asyncify/php_7_4.js +223 -222
- package/jspi/7_4_33/php_7_4.wasm +0 -0
- package/jspi/php_7_4.js +345 -344
- package/package.json +3 -3
|
Binary file
|
package/asyncify/php_7_4.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
const dependencyFilename = new URL('./7_4_33/php_7_4.wasm', import.meta.url)
|
|
2
2
|
.href;
|
|
3
3
|
export { dependencyFilename };
|
|
4
|
-
export const dependenciesTotalSize =
|
|
4
|
+
export const dependenciesTotalSize = 13904930;
|
|
5
5
|
const phpVersionString = '7.4.33';
|
|
6
6
|
export function init(RuntimeName, PHPLoader) {
|
|
7
7
|
// The rest of the code comes from the built php.js file and esm-suffix.js
|
|
@@ -6537,6 +6537,13 @@ export function init(RuntimeName, PHPLoader) {
|
|
|
6537
6537
|
return false;
|
|
6538
6538
|
};
|
|
6539
6539
|
_emscripten_resize_heap.sig = 'ip';
|
|
6540
|
+
var runAndAbortIfError = (func) => {
|
|
6541
|
+
try {
|
|
6542
|
+
return func();
|
|
6543
|
+
} catch (e) {
|
|
6544
|
+
abort(e);
|
|
6545
|
+
}
|
|
6546
|
+
};
|
|
6540
6547
|
var runtimeKeepalivePush = () => {
|
|
6541
6548
|
runtimeKeepaliveCounter += 1;
|
|
6542
6549
|
};
|
|
@@ -6545,6 +6552,193 @@ export function init(RuntimeName, PHPLoader) {
|
|
|
6545
6552
|
runtimeKeepaliveCounter -= 1;
|
|
6546
6553
|
};
|
|
6547
6554
|
runtimeKeepalivePop.sig = 'v';
|
|
6555
|
+
var Asyncify = {
|
|
6556
|
+
instrumentWasmImports(imports) {
|
|
6557
|
+
var importPattern =
|
|
6558
|
+
/^(invoke_i|invoke_ii|invoke_iii|invoke_iiii|invoke_iiiii|invoke_iiiiii|invoke_iiiiiii|invoke_iiiiiiii|invoke_iiiiiiiii|invoke_iiiiiiiiii|invoke_v|invoke_vi|invoke_vii|invoke_viidii|invoke_viii|invoke_viiii|invoke_viiiii|invoke_viiiiii|invoke_viiiiiii|invoke_viiiiiiiii|invoke_i|invoke_ii|invoke_iii|invoke_iiii|invoke_iiiii|invoke_iiiiii|invoke_iiiiiii|invoke_iiiiiiii|invoke_iiiiiiiiii|invoke_iij|invoke_iiji|invoke_iiij|invoke_iijii|invoke_iijiji|invoke_jii|invoke_jiii|invoke_viijii|invoke_vji|js_open_process|_js_open_process|_asyncjs__js_open_process|js_popen_to_file|_js_popen_to_file|_asyncjs__js_popen_to_file|__syscall_fcntl64|___syscall_fcntl64|_asyncjs___syscall_fcntl64|js_release_file_locks|_js_release_file_locks|_async_js_release_file_locks|js_flock|_js_flock|_async_js_flock|js_fd_read|_js_fd_read|fd_close|_fd_close|_asyncjs__fd_close|close|_close|js_module_onMessage|zend_hash_str_find|_js_module_onMessage|_asyncjs__js_module_onMessage|js_waitpid|_js_waitpid|_asyncjs__js_waitpid|wasm_poll_socket|_wasm_poll_socket|_asyncjs__wasm_poll_socket|_wasm_shutdown|_asyncjs__wasm_shutdown|recv|_recv|setsockopt|_setsockopt|wasm_connect|_wasm_connect|__asyncjs__.*)$/;
|
|
6559
|
+
for (let [x, original] of Object.entries(imports)) {
|
|
6560
|
+
if (typeof original == 'function') {
|
|
6561
|
+
let isAsyncifyImport =
|
|
6562
|
+
original.isAsync || importPattern.test(x);
|
|
6563
|
+
}
|
|
6564
|
+
}
|
|
6565
|
+
},
|
|
6566
|
+
instrumentFunction(original) {
|
|
6567
|
+
var wrapper = (...args) => {
|
|
6568
|
+
Asyncify.exportCallStack.push(original);
|
|
6569
|
+
try {
|
|
6570
|
+
return original(...args);
|
|
6571
|
+
} finally {
|
|
6572
|
+
if (!ABORT) {
|
|
6573
|
+
var top = Asyncify.exportCallStack.pop();
|
|
6574
|
+
Asyncify.maybeStopUnwind();
|
|
6575
|
+
}
|
|
6576
|
+
}
|
|
6577
|
+
};
|
|
6578
|
+
Asyncify.funcWrappers.set(original, wrapper);
|
|
6579
|
+
wrapper.orig = original;
|
|
6580
|
+
return wrapper;
|
|
6581
|
+
},
|
|
6582
|
+
instrumentWasmExports(exports) {
|
|
6583
|
+
var ret = {};
|
|
6584
|
+
for (let [x, original] of Object.entries(exports)) {
|
|
6585
|
+
if (typeof original == 'function') {
|
|
6586
|
+
var wrapper = Asyncify.instrumentFunction(original);
|
|
6587
|
+
ret[x] = wrapper;
|
|
6588
|
+
} else {
|
|
6589
|
+
ret[x] = original;
|
|
6590
|
+
}
|
|
6591
|
+
}
|
|
6592
|
+
return ret;
|
|
6593
|
+
},
|
|
6594
|
+
State: { Normal: 0, Unwinding: 1, Rewinding: 2, Disabled: 3 },
|
|
6595
|
+
state: 0,
|
|
6596
|
+
StackSize: 4096,
|
|
6597
|
+
currData: null,
|
|
6598
|
+
handleSleepReturnValue: 0,
|
|
6599
|
+
exportCallStack: [],
|
|
6600
|
+
callstackFuncToId: new Map(),
|
|
6601
|
+
callStackIdToFunc: new Map(),
|
|
6602
|
+
funcWrappers: new Map(),
|
|
6603
|
+
callStackId: 0,
|
|
6604
|
+
asyncPromiseHandlers: null,
|
|
6605
|
+
sleepCallbacks: [],
|
|
6606
|
+
getCallStackId(func) {
|
|
6607
|
+
if (!Asyncify.callstackFuncToId.has(func)) {
|
|
6608
|
+
var id = Asyncify.callStackId++;
|
|
6609
|
+
Asyncify.callstackFuncToId.set(func, id);
|
|
6610
|
+
Asyncify.callStackIdToFunc.set(id, func);
|
|
6611
|
+
}
|
|
6612
|
+
return Asyncify.callstackFuncToId.get(func);
|
|
6613
|
+
},
|
|
6614
|
+
maybeStopUnwind() {
|
|
6615
|
+
if (
|
|
6616
|
+
Asyncify.currData &&
|
|
6617
|
+
Asyncify.state === Asyncify.State.Unwinding &&
|
|
6618
|
+
Asyncify.exportCallStack.length === 0
|
|
6619
|
+
) {
|
|
6620
|
+
Asyncify.state = Asyncify.State.Normal;
|
|
6621
|
+
runtimeKeepalivePush();
|
|
6622
|
+
runAndAbortIfError(_asyncify_stop_unwind);
|
|
6623
|
+
if (typeof Fibers != 'undefined') {
|
|
6624
|
+
Fibers.trampoline();
|
|
6625
|
+
}
|
|
6626
|
+
}
|
|
6627
|
+
},
|
|
6628
|
+
whenDone() {
|
|
6629
|
+
return new Promise((resolve, reject) => {
|
|
6630
|
+
Asyncify.asyncPromiseHandlers = { resolve, reject };
|
|
6631
|
+
});
|
|
6632
|
+
},
|
|
6633
|
+
allocateData() {
|
|
6634
|
+
var ptr = _malloc(12 + Asyncify.StackSize);
|
|
6635
|
+
Asyncify.setDataHeader(ptr, ptr + 12, Asyncify.StackSize);
|
|
6636
|
+
Asyncify.setDataRewindFunc(ptr);
|
|
6637
|
+
return ptr;
|
|
6638
|
+
},
|
|
6639
|
+
setDataHeader(ptr, stack, stackSize) {
|
|
6640
|
+
HEAPU32[ptr >> 2] = stack;
|
|
6641
|
+
HEAPU32[(ptr + 4) >> 2] = stack + stackSize;
|
|
6642
|
+
},
|
|
6643
|
+
setDataRewindFunc(ptr) {
|
|
6644
|
+
var bottomOfCallStack = Asyncify.exportCallStack[0];
|
|
6645
|
+
var rewindId = Asyncify.getCallStackId(bottomOfCallStack);
|
|
6646
|
+
HEAP32[(ptr + 8) >> 2] = rewindId;
|
|
6647
|
+
},
|
|
6648
|
+
getDataRewindFunc(ptr) {
|
|
6649
|
+
var id = HEAP32[(ptr + 8) >> 2];
|
|
6650
|
+
var func = Asyncify.callStackIdToFunc.get(id);
|
|
6651
|
+
return func;
|
|
6652
|
+
},
|
|
6653
|
+
doRewind(ptr) {
|
|
6654
|
+
var original = Asyncify.getDataRewindFunc(ptr);
|
|
6655
|
+
var func = Asyncify.funcWrappers.get(original);
|
|
6656
|
+
runtimeKeepalivePop();
|
|
6657
|
+
return func();
|
|
6658
|
+
},
|
|
6659
|
+
handleSleep(startAsync) {
|
|
6660
|
+
if (ABORT) return;
|
|
6661
|
+
if (Asyncify.state === Asyncify.State.Normal) {
|
|
6662
|
+
var reachedCallback = false;
|
|
6663
|
+
var reachedAfterCallback = false;
|
|
6664
|
+
startAsync((handleSleepReturnValue = 0) => {
|
|
6665
|
+
if (ABORT) return;
|
|
6666
|
+
Asyncify.handleSleepReturnValue = handleSleepReturnValue;
|
|
6667
|
+
reachedCallback = true;
|
|
6668
|
+
if (!reachedAfterCallback) {
|
|
6669
|
+
return;
|
|
6670
|
+
}
|
|
6671
|
+
Asyncify.state = Asyncify.State.Rewinding;
|
|
6672
|
+
runAndAbortIfError(() =>
|
|
6673
|
+
_asyncify_start_rewind(Asyncify.currData)
|
|
6674
|
+
);
|
|
6675
|
+
if (typeof MainLoop != 'undefined' && MainLoop.func) {
|
|
6676
|
+
MainLoop.resume();
|
|
6677
|
+
}
|
|
6678
|
+
var asyncWasmReturnValue,
|
|
6679
|
+
isError = false;
|
|
6680
|
+
try {
|
|
6681
|
+
asyncWasmReturnValue = Asyncify.doRewind(
|
|
6682
|
+
Asyncify.currData
|
|
6683
|
+
);
|
|
6684
|
+
} catch (err) {
|
|
6685
|
+
asyncWasmReturnValue = err;
|
|
6686
|
+
isError = true;
|
|
6687
|
+
}
|
|
6688
|
+
var handled = false;
|
|
6689
|
+
if (!Asyncify.currData) {
|
|
6690
|
+
var asyncPromiseHandlers =
|
|
6691
|
+
Asyncify.asyncPromiseHandlers;
|
|
6692
|
+
if (asyncPromiseHandlers) {
|
|
6693
|
+
Asyncify.asyncPromiseHandlers = null;
|
|
6694
|
+
(isError
|
|
6695
|
+
? asyncPromiseHandlers.reject
|
|
6696
|
+
: asyncPromiseHandlers.resolve)(
|
|
6697
|
+
asyncWasmReturnValue
|
|
6698
|
+
);
|
|
6699
|
+
handled = true;
|
|
6700
|
+
}
|
|
6701
|
+
}
|
|
6702
|
+
if (isError && !handled) {
|
|
6703
|
+
throw asyncWasmReturnValue;
|
|
6704
|
+
}
|
|
6705
|
+
});
|
|
6706
|
+
reachedAfterCallback = true;
|
|
6707
|
+
if (!reachedCallback) {
|
|
6708
|
+
Asyncify.state = Asyncify.State.Unwinding;
|
|
6709
|
+
if (!Asyncify._cachedData) {
|
|
6710
|
+
Asyncify._cachedData = Asyncify.allocateData();
|
|
6711
|
+
} else {
|
|
6712
|
+
Asyncify.setDataHeader(
|
|
6713
|
+
Asyncify._cachedData,
|
|
6714
|
+
Asyncify._cachedData + 12,
|
|
6715
|
+
Asyncify.StackSize
|
|
6716
|
+
);
|
|
6717
|
+
Asyncify.setDataRewindFunc(Asyncify._cachedData);
|
|
6718
|
+
}
|
|
6719
|
+
Asyncify.currData = Asyncify._cachedData;
|
|
6720
|
+
if (typeof MainLoop != 'undefined' && MainLoop.func) {
|
|
6721
|
+
MainLoop.pause();
|
|
6722
|
+
}
|
|
6723
|
+
runAndAbortIfError(() =>
|
|
6724
|
+
_asyncify_start_unwind(Asyncify.currData)
|
|
6725
|
+
);
|
|
6726
|
+
}
|
|
6727
|
+
} else if (Asyncify.state === Asyncify.State.Rewinding) {
|
|
6728
|
+
Asyncify.state = Asyncify.State.Normal;
|
|
6729
|
+
runAndAbortIfError(_asyncify_stop_rewind);
|
|
6730
|
+
Asyncify.currData = null;
|
|
6731
|
+
Asyncify.sleepCallbacks.forEach(callUserCallback);
|
|
6732
|
+
} else {
|
|
6733
|
+
abort(`invalid state: ${Asyncify.state}`);
|
|
6734
|
+
}
|
|
6735
|
+
return Asyncify.handleSleepReturnValue;
|
|
6736
|
+
},
|
|
6737
|
+
handleAsync: (startAsync) =>
|
|
6738
|
+
Asyncify.handleSleep((wakeUp) => {
|
|
6739
|
+
startAsync().then(wakeUp);
|
|
6740
|
+
}),
|
|
6741
|
+
};
|
|
6548
6742
|
var safeSetTimeout = (func, timeout) => {
|
|
6549
6743
|
runtimeKeepalivePush();
|
|
6550
6744
|
return setTimeout(() => {
|
|
@@ -6554,9 +6748,6 @@ export function init(RuntimeName, PHPLoader) {
|
|
|
6554
6748
|
};
|
|
6555
6749
|
var _emscripten_sleep = function (ms) {
|
|
6556
6750
|
return Asyncify.handleSleep((wakeUp) => {
|
|
6557
|
-
// select() yields between socket reads. Nested zero-delay timers are
|
|
6558
|
-
// clamped by browsers, adding seconds to even a local curl download.
|
|
6559
|
-
// Use a task (not a microtask) so network events still get a turn.
|
|
6560
6751
|
if (ms === 0 && globalThis.scheduler?.postTask) {
|
|
6561
6752
|
runtimeKeepalivePush();
|
|
6562
6753
|
globalThis.scheduler.postTask(() => {
|
|
@@ -6985,13 +7176,11 @@ export function init(RuntimeName, PHPLoader) {
|
|
|
6985
7176
|
envLength
|
|
6986
7177
|
) {
|
|
6987
7178
|
if (!command) {
|
|
6988
|
-
|
|
6989
|
-
return -1;
|
|
7179
|
+
return -ERRNO_CODES.EINVAL;
|
|
6990
7180
|
}
|
|
6991
7181
|
const cmdstr = UTF8ToString(command);
|
|
6992
7182
|
if (!cmdstr.length) {
|
|
6993
|
-
|
|
6994
|
-
return -1;
|
|
7183
|
+
return -ERRNO_CODES.EINVAL;
|
|
6995
7184
|
}
|
|
6996
7185
|
let argsArray = [];
|
|
6997
7186
|
if (argsLength) {
|
|
@@ -7046,13 +7235,11 @@ export function init(RuntimeName, PHPLoader) {
|
|
|
7046
7235
|
}
|
|
7047
7236
|
} catch (e) {
|
|
7048
7237
|
if (e.code === 'SPAWN_UNSUPPORTED') {
|
|
7049
|
-
|
|
7050
|
-
return -1;
|
|
7238
|
+
return -ERRNO_CODES.ENOSYS;
|
|
7051
7239
|
}
|
|
7052
7240
|
if (typeof FS == 'undefined' || !(e.name === 'ErrnoError'))
|
|
7053
7241
|
throw e;
|
|
7054
|
-
|
|
7055
|
-
return -1;
|
|
7242
|
+
return -e.errno;
|
|
7056
7243
|
}
|
|
7057
7244
|
const ProcInfo = { pid: cp.pid, exited: false };
|
|
7058
7245
|
PHPWASM.processTable[ProcInfo.pid] = ProcInfo;
|
|
@@ -7063,7 +7250,12 @@ export function init(RuntimeName, PHPLoader) {
|
|
|
7063
7250
|
stderrChildFd = std[2]?.child,
|
|
7064
7251
|
stderrParentFd = std[2]?.parent;
|
|
7065
7252
|
const detachPipeDataListeners = [];
|
|
7066
|
-
|
|
7253
|
+
let childPipesClosed = false;
|
|
7254
|
+
const closeChildPipes = function () {
|
|
7255
|
+
if (childPipesClosed) {
|
|
7256
|
+
return;
|
|
7257
|
+
}
|
|
7258
|
+
childPipesClosed = true;
|
|
7067
7259
|
for (const detach of detachPipeDataListeners) {
|
|
7068
7260
|
detach();
|
|
7069
7261
|
}
|
|
@@ -7072,6 +7264,9 @@ export function init(RuntimeName, PHPLoader) {
|
|
|
7072
7264
|
FS.close(FS.streams[fd]);
|
|
7073
7265
|
}
|
|
7074
7266
|
}
|
|
7267
|
+
};
|
|
7268
|
+
cp.on('exit', function (code) {
|
|
7269
|
+
closeChildPipes();
|
|
7075
7270
|
ProcInfo.exitCode = code;
|
|
7076
7271
|
ProcInfo.exited = true;
|
|
7077
7272
|
});
|
|
@@ -7151,6 +7346,10 @@ export function init(RuntimeName, PHPLoader) {
|
|
|
7151
7346
|
});
|
|
7152
7347
|
} catch (e) {
|
|
7153
7348
|
console.error(e);
|
|
7349
|
+
closeChildPipes();
|
|
7350
|
+
if (!ProcInfo.pid) {
|
|
7351
|
+
return -(ERRNO_CODES[e.code] ?? ERRNO_CODES.ECHILD);
|
|
7352
|
+
}
|
|
7154
7353
|
return ProcInfo.pid;
|
|
7155
7354
|
}
|
|
7156
7355
|
if (stdinChildFd) {
|
|
@@ -7628,200 +7827,6 @@ export function init(RuntimeName, PHPLoader) {
|
|
|
7628
7827
|
function _wasm_shutdown(socketd, how) {
|
|
7629
7828
|
return PHPWASM.shutdownSocket(socketd, how);
|
|
7630
7829
|
}
|
|
7631
|
-
var runAndAbortIfError = (func) => {
|
|
7632
|
-
try {
|
|
7633
|
-
return func();
|
|
7634
|
-
} catch (e) {
|
|
7635
|
-
abort(e);
|
|
7636
|
-
}
|
|
7637
|
-
};
|
|
7638
|
-
var Asyncify = {
|
|
7639
|
-
instrumentWasmImports(imports) {
|
|
7640
|
-
var importPattern =
|
|
7641
|
-
/^(invoke_i|invoke_ii|invoke_iii|invoke_iiii|invoke_iiiii|invoke_iiiiii|invoke_iiiiiii|invoke_iiiiiiii|invoke_iiiiiiiii|invoke_iiiiiiiiii|invoke_v|invoke_vi|invoke_vii|invoke_viidii|invoke_viii|invoke_viiii|invoke_viiiii|invoke_viiiiii|invoke_viiiiiii|invoke_viiiiiiiii|invoke_i|invoke_ii|invoke_iii|invoke_iiii|invoke_iiiii|invoke_iiiiii|invoke_iiiiiii|invoke_iiiiiiii|invoke_iiiiiiiiii|invoke_iij|invoke_iiji|invoke_iiij|invoke_iijii|invoke_iijiji|invoke_jii|invoke_jiii|invoke_viijii|invoke_vji|js_open_process|_js_open_process|_asyncjs__js_open_process|js_popen_to_file|_js_popen_to_file|_asyncjs__js_popen_to_file|__syscall_fcntl64|___syscall_fcntl64|_asyncjs___syscall_fcntl64|js_release_file_locks|_js_release_file_locks|_async_js_release_file_locks|js_flock|_js_flock|_async_js_flock|js_fd_read|_js_fd_read|fd_close|_fd_close|_asyncjs__fd_close|close|_close|js_module_onMessage|zend_hash_str_find|_js_module_onMessage|_asyncjs__js_module_onMessage|js_waitpid|_js_waitpid|_asyncjs__js_waitpid|wasm_poll_socket|_wasm_poll_socket|_asyncjs__wasm_poll_socket|_wasm_shutdown|_asyncjs__wasm_shutdown|recv|_recv|setsockopt|_setsockopt|wasm_connect|_wasm_connect|__asyncjs__.*)$/;
|
|
7642
|
-
for (let [x, original] of Object.entries(imports)) {
|
|
7643
|
-
if (typeof original == 'function') {
|
|
7644
|
-
let isAsyncifyImport =
|
|
7645
|
-
original.isAsync || importPattern.test(x);
|
|
7646
|
-
}
|
|
7647
|
-
}
|
|
7648
|
-
},
|
|
7649
|
-
instrumentFunction(original) {
|
|
7650
|
-
var wrapper = (...args) => {
|
|
7651
|
-
Asyncify.exportCallStack.push(original);
|
|
7652
|
-
try {
|
|
7653
|
-
return original(...args);
|
|
7654
|
-
} finally {
|
|
7655
|
-
if (!ABORT) {
|
|
7656
|
-
var top = Asyncify.exportCallStack.pop();
|
|
7657
|
-
Asyncify.maybeStopUnwind();
|
|
7658
|
-
}
|
|
7659
|
-
}
|
|
7660
|
-
};
|
|
7661
|
-
Asyncify.funcWrappers.set(original, wrapper);
|
|
7662
|
-
wrapper.orig = original;
|
|
7663
|
-
return wrapper;
|
|
7664
|
-
},
|
|
7665
|
-
instrumentWasmExports(exports) {
|
|
7666
|
-
var ret = {};
|
|
7667
|
-
for (let [x, original] of Object.entries(exports)) {
|
|
7668
|
-
if (typeof original == 'function') {
|
|
7669
|
-
var wrapper = Asyncify.instrumentFunction(original);
|
|
7670
|
-
ret[x] = wrapper;
|
|
7671
|
-
} else {
|
|
7672
|
-
ret[x] = original;
|
|
7673
|
-
}
|
|
7674
|
-
}
|
|
7675
|
-
return ret;
|
|
7676
|
-
},
|
|
7677
|
-
State: { Normal: 0, Unwinding: 1, Rewinding: 2, Disabled: 3 },
|
|
7678
|
-
state: 0,
|
|
7679
|
-
StackSize: 4096,
|
|
7680
|
-
currData: null,
|
|
7681
|
-
handleSleepReturnValue: 0,
|
|
7682
|
-
exportCallStack: [],
|
|
7683
|
-
callstackFuncToId: new Map(),
|
|
7684
|
-
callStackIdToFunc: new Map(),
|
|
7685
|
-
funcWrappers: new Map(),
|
|
7686
|
-
callStackId: 0,
|
|
7687
|
-
asyncPromiseHandlers: null,
|
|
7688
|
-
sleepCallbacks: [],
|
|
7689
|
-
getCallStackId(func) {
|
|
7690
|
-
if (!Asyncify.callstackFuncToId.has(func)) {
|
|
7691
|
-
var id = Asyncify.callStackId++;
|
|
7692
|
-
Asyncify.callstackFuncToId.set(func, id);
|
|
7693
|
-
Asyncify.callStackIdToFunc.set(id, func);
|
|
7694
|
-
}
|
|
7695
|
-
return Asyncify.callstackFuncToId.get(func);
|
|
7696
|
-
},
|
|
7697
|
-
maybeStopUnwind() {
|
|
7698
|
-
if (
|
|
7699
|
-
Asyncify.currData &&
|
|
7700
|
-
Asyncify.state === Asyncify.State.Unwinding &&
|
|
7701
|
-
Asyncify.exportCallStack.length === 0
|
|
7702
|
-
) {
|
|
7703
|
-
Asyncify.state = Asyncify.State.Normal;
|
|
7704
|
-
runtimeKeepalivePush();
|
|
7705
|
-
runAndAbortIfError(_asyncify_stop_unwind);
|
|
7706
|
-
if (typeof Fibers != 'undefined') {
|
|
7707
|
-
Fibers.trampoline();
|
|
7708
|
-
}
|
|
7709
|
-
}
|
|
7710
|
-
},
|
|
7711
|
-
whenDone() {
|
|
7712
|
-
return new Promise((resolve, reject) => {
|
|
7713
|
-
Asyncify.asyncPromiseHandlers = { resolve, reject };
|
|
7714
|
-
});
|
|
7715
|
-
},
|
|
7716
|
-
allocateData() {
|
|
7717
|
-
var ptr = _malloc(12 + Asyncify.StackSize);
|
|
7718
|
-
Asyncify.setDataHeader(ptr, ptr + 12, Asyncify.StackSize);
|
|
7719
|
-
Asyncify.setDataRewindFunc(ptr);
|
|
7720
|
-
return ptr;
|
|
7721
|
-
},
|
|
7722
|
-
setDataHeader(ptr, stack, stackSize) {
|
|
7723
|
-
HEAPU32[ptr >> 2] = stack;
|
|
7724
|
-
HEAPU32[(ptr + 4) >> 2] = stack + stackSize;
|
|
7725
|
-
},
|
|
7726
|
-
setDataRewindFunc(ptr) {
|
|
7727
|
-
var bottomOfCallStack = Asyncify.exportCallStack[0];
|
|
7728
|
-
var rewindId = Asyncify.getCallStackId(bottomOfCallStack);
|
|
7729
|
-
HEAP32[(ptr + 8) >> 2] = rewindId;
|
|
7730
|
-
},
|
|
7731
|
-
getDataRewindFunc(ptr) {
|
|
7732
|
-
var id = HEAP32[(ptr + 8) >> 2];
|
|
7733
|
-
var func = Asyncify.callStackIdToFunc.get(id);
|
|
7734
|
-
return func;
|
|
7735
|
-
},
|
|
7736
|
-
doRewind(ptr) {
|
|
7737
|
-
var original = Asyncify.getDataRewindFunc(ptr);
|
|
7738
|
-
var func = Asyncify.funcWrappers.get(original);
|
|
7739
|
-
runtimeKeepalivePop();
|
|
7740
|
-
return func();
|
|
7741
|
-
},
|
|
7742
|
-
handleSleep(startAsync) {
|
|
7743
|
-
if (ABORT) return;
|
|
7744
|
-
if (Asyncify.state === Asyncify.State.Normal) {
|
|
7745
|
-
var reachedCallback = false;
|
|
7746
|
-
var reachedAfterCallback = false;
|
|
7747
|
-
startAsync((handleSleepReturnValue = 0) => {
|
|
7748
|
-
if (ABORT) return;
|
|
7749
|
-
Asyncify.handleSleepReturnValue = handleSleepReturnValue;
|
|
7750
|
-
reachedCallback = true;
|
|
7751
|
-
if (!reachedAfterCallback) {
|
|
7752
|
-
return;
|
|
7753
|
-
}
|
|
7754
|
-
Asyncify.state = Asyncify.State.Rewinding;
|
|
7755
|
-
runAndAbortIfError(() =>
|
|
7756
|
-
_asyncify_start_rewind(Asyncify.currData)
|
|
7757
|
-
);
|
|
7758
|
-
if (typeof MainLoop != 'undefined' && MainLoop.func) {
|
|
7759
|
-
MainLoop.resume();
|
|
7760
|
-
}
|
|
7761
|
-
var asyncWasmReturnValue,
|
|
7762
|
-
isError = false;
|
|
7763
|
-
try {
|
|
7764
|
-
asyncWasmReturnValue = Asyncify.doRewind(
|
|
7765
|
-
Asyncify.currData
|
|
7766
|
-
);
|
|
7767
|
-
} catch (err) {
|
|
7768
|
-
asyncWasmReturnValue = err;
|
|
7769
|
-
isError = true;
|
|
7770
|
-
}
|
|
7771
|
-
var handled = false;
|
|
7772
|
-
if (!Asyncify.currData) {
|
|
7773
|
-
var asyncPromiseHandlers =
|
|
7774
|
-
Asyncify.asyncPromiseHandlers;
|
|
7775
|
-
if (asyncPromiseHandlers) {
|
|
7776
|
-
Asyncify.asyncPromiseHandlers = null;
|
|
7777
|
-
(isError
|
|
7778
|
-
? asyncPromiseHandlers.reject
|
|
7779
|
-
: asyncPromiseHandlers.resolve)(
|
|
7780
|
-
asyncWasmReturnValue
|
|
7781
|
-
);
|
|
7782
|
-
handled = true;
|
|
7783
|
-
}
|
|
7784
|
-
}
|
|
7785
|
-
if (isError && !handled) {
|
|
7786
|
-
throw asyncWasmReturnValue;
|
|
7787
|
-
}
|
|
7788
|
-
});
|
|
7789
|
-
reachedAfterCallback = true;
|
|
7790
|
-
if (!reachedCallback) {
|
|
7791
|
-
Asyncify.state = Asyncify.State.Unwinding;
|
|
7792
|
-
if (!Asyncify._cachedData) {
|
|
7793
|
-
Asyncify._cachedData = Asyncify.allocateData();
|
|
7794
|
-
} else {
|
|
7795
|
-
Asyncify.setDataHeader(
|
|
7796
|
-
Asyncify._cachedData,
|
|
7797
|
-
Asyncify._cachedData + 12,
|
|
7798
|
-
Asyncify.StackSize
|
|
7799
|
-
);
|
|
7800
|
-
Asyncify.setDataRewindFunc(Asyncify._cachedData);
|
|
7801
|
-
}
|
|
7802
|
-
Asyncify.currData = Asyncify._cachedData;
|
|
7803
|
-
if (typeof MainLoop != 'undefined' && MainLoop.func) {
|
|
7804
|
-
MainLoop.pause();
|
|
7805
|
-
}
|
|
7806
|
-
runAndAbortIfError(() =>
|
|
7807
|
-
_asyncify_start_unwind(Asyncify.currData)
|
|
7808
|
-
);
|
|
7809
|
-
}
|
|
7810
|
-
} else if (Asyncify.state === Asyncify.State.Rewinding) {
|
|
7811
|
-
Asyncify.state = Asyncify.State.Normal;
|
|
7812
|
-
runAndAbortIfError(_asyncify_stop_rewind);
|
|
7813
|
-
Asyncify.currData = null;
|
|
7814
|
-
Asyncify.sleepCallbacks.forEach(callUserCallback);
|
|
7815
|
-
} else {
|
|
7816
|
-
abort(`invalid state: ${Asyncify.state}`);
|
|
7817
|
-
}
|
|
7818
|
-
return Asyncify.handleSleepReturnValue;
|
|
7819
|
-
},
|
|
7820
|
-
handleAsync: (startAsync) =>
|
|
7821
|
-
Asyncify.handleSleep((wakeUp) => {
|
|
7822
|
-
startAsync().then(wakeUp);
|
|
7823
|
-
}),
|
|
7824
|
-
};
|
|
7825
7830
|
var getCFunc = (ident) => {
|
|
7826
7831
|
var func = Module['_' + ident];
|
|
7827
7832
|
return func;
|
|
@@ -8204,10 +8209,7 @@ export function init(RuntimeName, PHPLoader) {
|
|
|
8204
8209
|
return ERRNO_CODES.EWOULDBLOCK;
|
|
8205
8210
|
}
|
|
8206
8211
|
return returnCallback(async (wakeUp) => {
|
|
8207
|
-
var retries = 0;
|
|
8208
8212
|
var interval = 50;
|
|
8209
|
-
var timeout = 5e3;
|
|
8210
|
-
var maxRetries = timeout / interval;
|
|
8211
8213
|
while (true) {
|
|
8212
8214
|
var returnCode;
|
|
8213
8215
|
var stream;
|
|
@@ -8231,7 +8233,6 @@ export function init(RuntimeName, PHPLoader) {
|
|
|
8231
8233
|
return wakeUp(0);
|
|
8232
8234
|
}
|
|
8233
8235
|
if (
|
|
8234
|
-
++retries > maxRetries ||
|
|
8235
8236
|
!stream ||
|
|
8236
8237
|
FS.isClosed(stream) ||
|
|
8237
8238
|
returnCode !== ERRNO_CODES.EWOULDBLOCK ||
|
|
@@ -9147,23 +9148,23 @@ export function init(RuntimeName, PHPLoader) {
|
|
|
9147
9148
|
__indirect_function_table = wasmTable =
|
|
9148
9149
|
wasmExports['__indirect_function_table'];
|
|
9149
9150
|
}
|
|
9150
|
-
var _executor_globals = (Module['_executor_globals'] =
|
|
9151
|
-
var _zend_ce_traversable = (Module['_zend_ce_traversable'] =
|
|
9152
|
-
var _zend_ce_iterator = (Module['_zend_ce_iterator'] =
|
|
9153
|
-
var _zend_ce_countable = (Module['_zend_ce_countable'] =
|
|
9154
|
-
var _zend_ce_exception = (Module['_zend_ce_exception'] =
|
|
9155
|
-
var _zend_empty_string = (Module['_zend_empty_string'] =
|
|
9151
|
+
var _executor_globals = (Module['_executor_globals'] = 10274312);
|
|
9152
|
+
var _zend_ce_traversable = (Module['_zend_ce_traversable'] = 10265880);
|
|
9153
|
+
var _zend_ce_iterator = (Module['_zend_ce_iterator'] = 10265888);
|
|
9154
|
+
var _zend_ce_countable = (Module['_zend_ce_countable'] = 10265900);
|
|
9155
|
+
var _zend_ce_exception = (Module['_zend_ce_exception'] = 10265620);
|
|
9156
|
+
var _zend_empty_string = (Module['_zend_empty_string'] = 10263992);
|
|
9156
9157
|
var _zend_string_init_interned = (Module['_zend_string_init_interned'] =
|
|
9157
|
-
|
|
9158
|
+
10264060);
|
|
9158
9159
|
var _std_object_handlers = (Module['_std_object_handlers'] = 9689592);
|
|
9159
9160
|
var ___memory_base = (Module['___memory_base'] = 0);
|
|
9160
9161
|
var ___table_base = (Module['___table_base'] = 1);
|
|
9161
9162
|
var _stdout = (Module['_stdout'] = 10257536);
|
|
9162
|
-
var _timezone = (Module['_timezone'] =
|
|
9163
|
-
var _tzname = (Module['_tzname'] =
|
|
9164
|
-
var ___heap_base =
|
|
9163
|
+
var _timezone = (Module['_timezone'] = 10368872);
|
|
9164
|
+
var _tzname = (Module['_tzname'] = 10368880);
|
|
9165
|
+
var ___heap_base = 11430736;
|
|
9165
9166
|
var __ZNSt3__25ctypeIcE2idE = (Module['__ZNSt3__25ctypeIcE2idE'] =
|
|
9166
|
-
|
|
9167
|
+
10382140);
|
|
9167
9168
|
var __ZTVN10__cxxabiv120__si_class_type_infoE = (Module[
|
|
9168
9169
|
'__ZTVN10__cxxabiv120__si_class_type_infoE'
|
|
9169
9170
|
] = 10257784);
|
package/jspi/7_4_33/php_7_4.wasm
CHANGED
|
Binary file
|