aboutsummaryrefslogtreecommitdiff
path: root/src/library_browser.js
diff options
context:
space:
mode:
Diffstat (limited to 'src/library_browser.js')
-rw-r--r--src/library_browser.js19
1 files changed, 12 insertions, 7 deletions
diff --git a/src/library_browser.js b/src/library_browser.js
index fd175df5..cb9a40cf 100644
--- a/src/library_browser.js
+++ b/src/library_browser.js
@@ -126,6 +126,15 @@ mergeInto(LibraryManager.library, {
event.mozMovementY ||
event.webkitMovementY ||
0; // delta;
+ },
+
+ getAsyncCall: function(func) {
+ if (!Browser.asyncCalls[func]) {
+ Browser.asyncCalls[func] = function() {
+ FUNCTION_TABLE[func].apply(null, arguments);
+ };
+ }
+ return Browser.asyncCalls[func];
}
},
@@ -169,15 +178,11 @@ mergeInto(LibraryManager.library, {
emscripten_async_call: function(func, millis) {
Module['noExitRuntime'] = true;
- if (!Browser.asyncCalls[func]) {
- Browser.asyncCalls[func] = function() {
- FUNCTION_TABLE[func]();
- };
- }
+ var asyncCall = Browser.getAsyncCall(func);
if (millis >= 0) {
- setTimeout(Browser.asyncCalls[func], millis);
+ setTimeout(asyncCall, millis);
} else {
- Browser.requestAnimationFrame(Browser.asyncCalls[func]);
+ Browser.requestAnimationFrame(asyncCall);
}
}
});