Logo
Explore Help
Sign In
1berry/nodejs
1
0
Fork 0
You've already forked nodejs
Code Issues Packages Projects Releases Wiki Activity
nodejs/test/parallel/test-net-socket-end-before-connect.js

14 lines
300 B
JavaScript
Raw Permalink Normal View History

net: emit 'close' when socket ends before connect Don't set `writable` to true when a socket connects if the socket is already in an ending state. In the existing code, afterConnect always set `writable` to true. This has been the case for a long time, but previous to commit 9b7a6914a7f0bd754e78b42b48c75851cfd6b3c4, the socket would still be destroyed by `destroySoon` and emit a `'close'` event. Since that commit removed this masking behavior, we have relied on maybeDestroy to destroy the socket when the readble state is ended, and that won't happen if `writable` is set to true. If the socket has `allowHalfOpen` set to true, then `destroy` will still not be called and `'close'` will not be emitted. PR-URL: https://github.com/nodejs/node/pull/21290 Fixes: https://github.com/nodejs/node/issues/21268 Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
2018-06-12 11:29:57 -04:00
'use strict';
const common = require('../common');
const net = require('net');
const server = net.createServer();
server.listen(common.mustCall(() => {
const socket = net.createConnection(server.address().port);
socket.on('close', common.mustCall(() => server.close()));
socket.end();
}));
Reference in New Issue Copy Permalink
Powered by Gitea Version: 1.23.8 Page: 4902ms Template: 2ms
English
Bahasa Indonesia Deutsch English Español Français Gaeilge Italiano Latviešu Magyar nyelv Nederlands Polski Português de Portugal Português do Brasil Suomi Svenska Türkçe Čeština Ελληνικά Български Русский Українська فارسی മലയാളം 日本語 简体中文 繁體中文(台灣) 繁體中文(香港) 한국어
Licenses API