diff options
author | Anna Henningsen <anna@addaleax.net> | 2019-03-07 12:22:36 +0100 |
---|---|---|
committer | Ruben Bridgewater <ruben@bridgewater.de> | 2019-03-10 00:46:54 +0100 |
commit | e7f58868b5ea1312f7bac4f152f4d928b64e0202 (patch) | |
tree | e06a734c0302b86fca764a34f9325b8032261d5d /lib/internal | |
parent | 3414bc7b25a00556af80c6ba946e28464e7e8d36 (diff) | |
download | android-node-v8-e7f58868b5ea1312f7bac4f152f4d928b64e0202.tar.gz android-node-v8-e7f58868b5ea1312f7bac4f152f4d928b64e0202.tar.bz2 android-node-v8-e7f58868b5ea1312f7bac4f152f4d928b64e0202.zip |
net: use kHandle symbol for accessing native handle
Use a common `kHandle` for all `StreamBase`-based streams.
PR-URL: https://github.com/nodejs/node/pull/26491
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
Reviewed-By: Sam Roberts <vieuxtech@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Diffstat (limited to 'lib/internal')
-rw-r--r-- | lib/internal/http2/core.js | 10 | ||||
-rw-r--r-- | lib/internal/stream_base_commons.js | 12 |
2 files changed, 13 insertions, 9 deletions
diff --git a/lib/internal/http2/core.js b/lib/internal/http2/core.js index 68c1b29e6d..dd287ed5eb 100644 --- a/lib/internal/http2/core.js +++ b/lib/internal/http2/core.js @@ -106,13 +106,13 @@ const { updateSettingsBuffer } = require('internal/http2/util'); const { - createWriteWrap, writeGeneric, writevGeneric, onStreamRead, kAfterAsyncWrite, kMaybeDestroy, kUpdateTimer, + kHandle, kSession, setStreamTimeout } = require('internal/stream_base_commons'); @@ -149,7 +149,6 @@ const TLSServer = tls.Server; const kAlpnProtocol = Symbol('alpnProtocol'); const kAuthority = Symbol('authority'); const kEncrypted = Symbol('encrypted'); -const kHandle = Symbol('handle'); const kID = Symbol('id'); const kInit = Symbol('init'); const kInfoHeaders = Symbol('sent-info-headers'); @@ -1795,13 +1794,12 @@ class Http2Stream extends Duplex { if (!this.headersSent) this[kProceed](); - const req = createWriteWrap(this[kHandle]); - req.stream = this[kID]; + let req; if (writev) - writevGeneric(this, req, data, cb); + req = writevGeneric(this, data, cb); else - writeGeneric(this, req, data, encoding, cb); + req = writeGeneric(this, data, encoding, cb); trackWriteState(this, req.bytes); } diff --git a/lib/internal/stream_base_commons.js b/lib/internal/stream_base_commons.js index 64ea864e29..7b5798e82a 100644 --- a/lib/internal/stream_base_commons.js +++ b/lib/internal/stream_base_commons.js @@ -27,7 +27,8 @@ const { const kMaybeDestroy = Symbol('kMaybeDestroy'); const kUpdateTimer = Symbol('kUpdateTimer'); const kAfterAsyncWrite = Symbol('kAfterAsyncWrite'); -const kSession = Symbol('session'); +const kHandle = Symbol('kHandle'); +const kSession = Symbol('kSession'); function handleWriteReq(req, data, encoding) { const { handle } = req; @@ -98,7 +99,8 @@ function createWriteWrap(handle) { return req; } -function writevGeneric(self, req, data, cb) { +function writevGeneric(self, data, cb) { + const req = createWriteWrap(self[kHandle]); var allBuffers = data.allBuffers; var chunks; var i; @@ -120,12 +122,15 @@ function writevGeneric(self, req, data, cb) { if (err === 0) req._chunks = chunks; afterWriteDispatched(self, req, err, cb); + return req; } -function writeGeneric(self, req, data, encoding, cb) { +function writeGeneric(self, data, encoding, cb) { + const req = createWriteWrap(self[kHandle]); var err = handleWriteReq(req, data, encoding); afterWriteDispatched(self, req, err, cb); + return req; } function afterWriteDispatched(self, req, err, cb) { @@ -229,6 +234,7 @@ module.exports = { kAfterAsyncWrite, kMaybeDestroy, kUpdateTimer, + kHandle, kSession, setStreamTimeout }; |