Browse Source

timers: Move list.ontimeout to separate function

v0.9.5-release
isaacs 12 years ago
parent
commit
ba94f9d6f8
  1. 19
      lib/timers.js
  2. 2
      test/message/timeout_throw.out

19
lib/timers.js

@ -66,12 +66,22 @@ function insert(item, msecs) {
L.init(list);
lists[msecs] = list;
list.msecs = msecs;
list.ontimeout = listOnTimeout;
}
L.append(list, item);
assert(!L.isEmpty(list)); // list is not empty
}
function listOnTimeout() {
var msecs = this.msecs;
var list = this;
list.ontimeout = function() {
debug('timeout callback ' + msecs);
var now = Date.now();
debug('now: ' + (new Date(now)));
debug('now: ' + now);
var first;
while (first = L.peek(list)) {
@ -115,11 +125,6 @@ function insert(item, msecs) {
assert(L.isEmpty(list));
list.close();
delete lists[msecs];
};
}
L.append(list, item);
assert(!L.isEmpty(list)); // list is not empty
}

2
test/message/timeout_throw.out

@ -3,5 +3,5 @@
^
ReferenceError: undefined_reference_error_maker is not defined
at null._onTimeout (*test*message*timeout_throw.js:*:*)
at Timer.list.ontimeout (timers.js:*:*)
at Timer.listOnTimeout [as ontimeout] (timers.js:*:*)
at process._makeCallback (node.js:*:*)

Loading…
Cancel
Save