skia2/modules/pathkit/ready.js
Kevin Lubick 275eaff3be [pathkit] Add .ready() to initialize
See https://github.com/kripken/emscripten/issues/5820 and
https://skia-review.googlesource.com/c/skia/+/181177 for more context.

(Problem was discovered in CanvasKit, and this ports the same fix to
PathKit).

Bug: skia:
Change-Id: Ic8b2fb399210631a571595a5b3d11d1736c00def
Reviewed-on: https://skia-review.googlesource.com/c/181178
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
2019-01-04 19:58:22 +00:00

14 lines
515 B
JavaScript

// See https://github.com/kripken/emscripten/issues/5820#issuecomment-385722568
// for context on why the .then() that comes with Module breaks things (e.g. infinite loops)
// and why the below fixes it.
Module['ready'] = function() {
return new Promise(function (resolve, reject) {
delete Module['then'];
Module['onAbort'] = reject;
addOnPostRun(function () {
resolve(Module)
});
});
}
// TODO(kjlubick): Shut .then() entirely off in 0.6.0 by uncommenting below.
// delete Module['then'];