a simple script to crash Node.js with an assertion failure: (loop->watchers[w->fd] == w)
This crash was reported several times in [1] [2] [3] [4], I also devised a simple script to reproduce the crash as below.
var fd = 3;
while (fd<1000) {
try {
var stream = new net.Socket({
fd: fd,
readable: false,
writable: true
});
stream.on('error', function() {});
stream.write('might crash');
} catch(e) {}
fd += 1;
}
[1] https://github.com/joyent/libuv/issues/838 [2] https://github.com/joyent/libuv/issues/1348 [3] https://github.com/jeremycx/node-LDAP/issues/33 [4] https://github.com/voodootikigod/node-serialport/issues/262