Skip to content

Commit

Permalink
Revert "net: remove unnecessary process.nextTick()"
Browse files Browse the repository at this point in the history
This reverts commit 571882c.

Removing the process.nextTick() call can prevent the consumer
from being able to catch error events.

PR-URL: #12854
Fixes: #12841
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
  • Loading branch information
evanlucas authored and jasnell committed May 28, 2017
1 parent c7182b9 commit 4fabcfc
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 5 deletions.
5 changes: 4 additions & 1 deletion lib/net.js
Original file line number Diff line number Diff line change
Expand Up @@ -1036,7 +1036,10 @@ function lookupAndConnect(self, options) {
// If host is an IP, skip performing a lookup
var addressType = cares.isIP(host);
if (addressType) {
internalConnect(self, host, port, addressType, localAddress, localPort);
nextTick(self[async_id_symbol], function() {
if (self.connecting)
internalConnect(self, host, port, addressType, localAddress, localPort);
});
return;
}

Expand Down
11 changes: 7 additions & 4 deletions test/async-hooks/test-tcpwrap.js
Original file line number Diff line number Diff line change
Expand Up @@ -48,13 +48,16 @@ const server = net
{ port: server.address().port, host: server.address().address },
common.mustCall(onconnected));
const tcps = hooks.activitiesOfTypes('TCPWRAP');
const tcpconnects = hooks.activitiesOfTypes('TCPCONNECTWRAP');
assert.strictEqual(
tcps.length, 2,
'2 TCPWRAPs present when client is connecting');
assert.strictEqual(
tcpconnects.length, 1,
'1 TCPCONNECTWRAP present when client is connecting');
process.nextTick(() => {
const tcpconnects = hooks.activitiesOfTypes('TCPCONNECTWRAP');
assert.strictEqual(
tcpconnects.length, 1,
'1 TCPCONNECTWRAP present when client is connecting');
});

tcp2 = tcps[1];
assert.strictEqual(tcps.length, 2,
'2 TCPWRAP present when client is connecting');
Expand Down

0 comments on commit 4fabcfc

Please sign in to comment.