From 807844c836b08b1defd56fcfe0642ace59ec927f Mon Sep 17 00:00:00 2001 From: j <0x006A@0x2620.org> Date: Tue, 9 Jul 2013 14:29:14 +0000 Subject: [PATCH] Ox.cache async should call callback always async --- source/Ox/js/Function.js | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/source/Ox/js/Function.js b/source/Ox/js/Function.js index f1b2c4c3..c54fdecf 100644 --- a/source/Ox/js/Function.js +++ b/source/Ox/js/Function.js @@ -2,6 +2,10 @@ /*@ Ox.cache Memoize a function + fn function + options + async function is async, last argument must be callback + key return key for arguments @@ -31,7 +35,9 @@ Ox.cache = function(fn, options) { fn.apply(this, args.slice(0, -1).concat(callback)); } else { // call callback with cached arguments - callback.apply(this, cache[key]) + setTimeout(function() { + callback.apply(this, cache[key]); + }); } } else { if (!(key in cache)) {