node/lib
Julien Gilli fd2cb7c611 timers: don't mutate unref list while iterating it
Commit 934bfe23a1 had introduced a
regression where node would crash trying to access a null unref timer if
a given unref timer's callback would remove other unref timers set to
fire in the future.

More generally, it makes the unrefTimeout function more solid by not
mutating the unrefList while traversing it.

Fixes #8897.

Reviewed-By: Timothy J Fontaine <tjfontaine@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
2014-12-22 11:45:31 -08:00
..
_debugger.js debugger: Fix breakpoint not showing after restart 2014-02-17 20:47:46 -08:00
_linklist.js Update copyright headers 2011-03-14 17:37:05 -07:00
_stream_duplex.js stdio: Set readable/writable flags properly 2013-01-17 10:42:44 -08:00
_stream_passthrough.js stream: _write takes an encoding argument 2013-03-05 14:27:15 -08:00
_stream_readable.js repl: Private Buffer object in lib/* files 2014-10-25 00:36:04 -07:00
_stream_transform.js stream: objectMode transforms allow falsey values 2013-09-05 13:19:23 -07:00
_stream_writable.js repl: Private Buffer object in lib/* files 2014-10-25 00:36:04 -07:00
assert.js repl: Private Buffer object in lib/* files 2014-10-25 00:36:04 -07:00
buffer.js buffer: fix sign overflow in `readUIn32BE` 2014-07-29 12:34:49 +04:00
child_process.js lint: fix lint issues 2014-11-18 16:42:10 -08:00
cluster.js cluster: disconnect should not be synchronous 2014-08-02 00:41:13 -07:00
console.js console: Support formatting options in trace() 2013-01-18 15:39:08 -08:00
constants.js Update copyright headers 2011-03-14 17:37:05 -07:00
crypto.js tls: honorCipherOrder should not degrade defaults 2014-10-23 10:44:56 -07:00
dgram.js repl: Private Buffer object in lib/* files 2014-10-25 00:36:04 -07:00
dns.js Revert "dns: validate arguments in resolve" 2014-02-08 02:15:33 +04:00
domain.js domains: exit() only affects active domains 2014-01-15 12:27:10 -08:00
events.js lib: name EventEmitter prototype methods 2014-05-07 12:11:57 -07:00
freelist.js Update copyright headers 2011-03-14 17:37:05 -07:00
fs.js repl: Private Buffer object in lib/* files 2014-10-25 00:36:04 -07:00
http.js repl: Private Buffer object in lib/* files 2014-10-25 00:36:04 -07:00
https.js https: optimize https.createConnection() 2012-12-28 16:42:51 +01:00
module.js module: eliminate double `getenv()` 2014-07-31 08:59:46 -07:00
net.js repl: Private Buffer object in lib/* files 2014-10-25 00:36:04 -07:00
os.js os: rename tmpDir() to tmpdir() for consistency 2013-01-30 04:24:58 +01:00
path.js lint 2013-02-22 16:30:27 -08:00
punycode.js punycode: update to v1.2.0 2013-01-16 16:53:11 +01:00
querystring.js querystring: fix unescape override 2014-08-27 13:49:16 +04:00
readline.js repl: Private Buffer object in lib/* files 2014-10-25 00:36:04 -07:00
repl.js repl: do not insert duplicates into completions 2013-11-11 15:45:09 -08:00
stream.js events: add check for listeners length 2013-03-01 17:36:47 -08:00
string_decoder.js lib: jslint string_decoder.js 2014-07-15 12:43:59 +04:00
sys.js Fix #3577 Un-break require('sys') 2012-06-28 10:14:03 -07:00
timers.js timers: don't mutate unref list while iterating it 2014-12-22 11:45:31 -08:00
tls.js repl: Private Buffer object in lib/* files 2014-10-25 00:36:04 -07:00
tty.js lib, src: remove errno global 2013-02-28 23:11:47 +01:00
url.js url: Add support for RFC 3490 separators 2014-08-27 14:36:04 +04:00
util.js util: format as Error if instanceof Error 2014-04-26 00:52:49 +04:00
vm.js lint 2012-03-03 23:48:57 -08:00
zlib.js repl: Private Buffer object in lib/* files 2014-10-25 00:36:04 -07:00