commit 8eda39ad7ea618538e5b5073210a2b9ce1025575
parent a3f958be0025fec401410eafce550bfbaabdbb67
Author: Simon Kornblith <simon@simonster.com>
Date: Thu, 6 Oct 2011 01:40:35 +0000
Requeue nsITimerCallbacks that didn't execute during pumpGenerator
Diffstat:
1 file changed, 7 insertions(+), 0 deletions(-)
diff --git a/chrome/content/zotero/xpcom/zotero.js b/chrome/content/zotero/xpcom/zotero.js
@@ -1521,6 +1521,13 @@ const ZOTERO_CONFIG = {
timer.cancel();
_runningTimers.splice(_runningTimers.indexOf(timer), 1);
+ // requeue nsITimerCallbacks that came up during generator pumping but couldn't execute
+ for(var i in _waitTimers) {
+ _waitTimers[i].initWithCallback(_waitTimerCallbacks[i], 0, Components.interfaces.nsITimer.TYPE_ONE_SHOT);
+ }
+ _waitTimers = [];
+ _waitTimerCallbacks = [];
+
if(err) throw err;
}}
timer.initWithCallback(timerCallback, ms ? ms : 0, Components.interfaces.nsITimer.TYPE_REPEATING_SLACK);