Updated x2t library. Added support for Excel2007
This commit is contained in:
parent
2ef61371f4
commit
1123928942
File diff suppressed because one or more lines are too long
Binary file not shown.
@ -26,6 +26,9 @@ var Module = {};
|
|||||||
|
|
||||||
// These modes need to assign to these variables because of how scoping works in them.
|
// These modes need to assign to these variables because of how scoping works in them.
|
||||||
|
|
||||||
|
function assert(condition, text) {
|
||||||
|
if (!condition) abort('Assertion failed: ' + text);
|
||||||
|
}
|
||||||
|
|
||||||
function threadPrintErr() {
|
function threadPrintErr() {
|
||||||
var text = Array.prototype.slice.call(arguments).join(' ');
|
var text = Array.prototype.slice.call(arguments).join(' ');
|
||||||
@ -103,9 +106,16 @@ this.onmessage = function(e) {
|
|||||||
var max = e.data.stackBase;
|
var max = e.data.stackBase;
|
||||||
var top = e.data.stackBase + e.data.stackSize;
|
var top = e.data.stackBase + e.data.stackSize;
|
||||||
Module['applyStackValues'](top, top, max);
|
Module['applyStackValues'](top, top, max);
|
||||||
|
assert(threadInfoStruct);
|
||||||
|
assert(selfThreadId);
|
||||||
|
assert(parentThreadId);
|
||||||
|
assert(top != 0);
|
||||||
|
assert(max === e.data.stackBase);
|
||||||
|
assert(top > max);
|
||||||
// Call inside asm.js/wasm module to set up the stack frame for this pthread in asm.js/wasm module scope
|
// Call inside asm.js/wasm module to set up the stack frame for this pthread in asm.js/wasm module scope
|
||||||
Module['establishStackSpace'](e.data.stackBase, e.data.stackBase + e.data.stackSize);
|
Module['establishStackSpace'](e.data.stackBase, e.data.stackBase + e.data.stackSize);
|
||||||
Module['_emscripten_tls_init']();
|
Module['_emscripten_tls_init']();
|
||||||
|
Module['writeStackCookie']();
|
||||||
|
|
||||||
PThread.receiveObjectTransfer(e.data);
|
PThread.receiveObjectTransfer(e.data);
|
||||||
PThread.setThreadStatus(Module['_pthread_self'](), 1/*EM_THREAD_STATUS_RUNNING*/);
|
PThread.setThreadStatus(Module['_pthread_self'](), 1/*EM_THREAD_STATUS_RUNNING*/);
|
||||||
@ -120,6 +130,7 @@ this.onmessage = function(e) {
|
|||||||
// flag -s EMULATE_FUNCTION_POINTER_CASTS=1 to add in emulation for this x86 ABI extension.
|
// flag -s EMULATE_FUNCTION_POINTER_CASTS=1 to add in emulation for this x86 ABI extension.
|
||||||
var result = Module['dynCall_ii'](e.data.start_routine, e.data.arg);
|
var result = Module['dynCall_ii'](e.data.start_routine, e.data.arg);
|
||||||
|
|
||||||
|
Module['checkStackCookie']();
|
||||||
|
|
||||||
} catch(e) {
|
} catch(e) {
|
||||||
if (e === 'Canceled!') {
|
if (e === 'Canceled!') {
|
||||||
@ -130,6 +141,10 @@ this.onmessage = function(e) {
|
|||||||
} else {
|
} else {
|
||||||
Atomics.store(HEAPU32, (threadInfoStruct + 4 /*C_STRUCTS.pthread.threadExitCode*/ ) >> 2, (e instanceof Module['ExitStatus']) ? e.status : -2 /*A custom entry specific to Emscripten denoting that the thread crashed.*/);
|
Atomics.store(HEAPU32, (threadInfoStruct + 4 /*C_STRUCTS.pthread.threadExitCode*/ ) >> 2, (e instanceof Module['ExitStatus']) ? e.status : -2 /*A custom entry specific to Emscripten denoting that the thread crashed.*/);
|
||||||
Atomics.store(HEAPU32, (threadInfoStruct + 0 /*C_STRUCTS.pthread.threadStatus*/ ) >> 2, 1); // Mark the thread as no longer running.
|
Atomics.store(HEAPU32, (threadInfoStruct + 0 /*C_STRUCTS.pthread.threadStatus*/ ) >> 2, 1); // Mark the thread as no longer running.
|
||||||
|
if (typeof(Module['_emscripten_futex_wake']) !== "function") {
|
||||||
|
err("Thread Initialisation failed.");
|
||||||
|
throw e;
|
||||||
|
}
|
||||||
Module['_emscripten_futex_wake'](threadInfoStruct + 0 /*C_STRUCTS.pthread.threadStatus*/, 0x7FFFFFFF/*INT_MAX*/); // Wake all threads waiting on this thread to finish.
|
Module['_emscripten_futex_wake'](threadInfoStruct + 0 /*C_STRUCTS.pthread.threadStatus*/, 0x7FFFFFFF/*INT_MAX*/); // Wake all threads waiting on this thread to finish.
|
||||||
if (!(e instanceof Module['ExitStatus'])) throw e;
|
if (!(e instanceof Module['ExitStatus'])) throw e;
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user