diff options
author | Anatoli Papirovski <apapirovski@mac.com> | 2018-04-18 09:26:16 +0200 |
---|---|---|
committer | Ruben Bridgewater <ruben@bridgewater.de> | 2018-04-23 15:59:26 +0200 |
commit | 2e31d5db730a9957aa7ecd590b3464c1f2eb2a45 (patch) | |
tree | 3aa4c339d4bcb56b15a052b7461fc743af4d24a9 /lib | |
parent | 1d1ab76e1737da4229b3a0774c60a8fbead89040 (diff) | |
download | android-node-v8-2e31d5db730a9957aa7ecd590b3464c1f2eb2a45.tar.gz android-node-v8-2e31d5db730a9957aa7ecd590b3464c1f2eb2a45.tar.bz2 android-node-v8-2e31d5db730a9957aa7ecd590b3464c1f2eb2a45.zip |
http: cleanup _http_common.js
Remove constant deep property access by storing a reference,
use more const, make some conditionals stricter.
PR-URL: https://github.com/nodejs/node/pull/20126
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Daniel Bevenius <daniel.bevenius@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Diffstat (limited to 'lib')
-rw-r--r-- | lib/_http_common.js | 51 |
1 files changed, 24 insertions, 27 deletions
diff --git a/lib/_http_common.js b/lib/_http_common.js index 7f53aca246..f34396ba8a 100644 --- a/lib/_http_common.js +++ b/lib/_http_common.js @@ -65,12 +65,12 @@ function parserOnHeadersComplete(versionMajor, versionMinor, headers, method, const parser = this; const { socket } = parser; - if (!headers) { + if (headers === undefined) { headers = parser._headers; parser._headers = []; } - if (!url) { + if (url === undefined) { url = parser._url; parser._url = ''; } @@ -80,12 +80,12 @@ function parserOnHeadersComplete(versionMajor, versionMinor, headers, method, socket.server[kIncomingMessage]) || IncomingMessage; - parser.incoming = new ParserIncomingMessage(socket); - parser.incoming.httpVersionMajor = versionMajor; - parser.incoming.httpVersionMinor = versionMinor; - parser.incoming.httpVersion = `${versionMajor}.${versionMinor}`; - parser.incoming.url = url; - parser.incoming.upgrade = upgrade; + const incoming = parser.incoming = new ParserIncomingMessage(socket); + incoming.httpVersionMajor = versionMajor; + incoming.httpVersionMinor = versionMinor; + incoming.httpVersion = `${versionMajor}.${versionMinor}`; + incoming.url = url; + incoming.upgrade = upgrade; var n = headers.length; @@ -93,51 +93,48 @@ function parserOnHeadersComplete(versionMajor, versionMinor, headers, method, if (parser.maxHeaderPairs > 0) n = Math.min(n, parser.maxHeaderPairs); - parser.incoming._addHeaderLines(headers, n); + incoming._addHeaderLines(headers, n); if (typeof method === 'number') { // server only - parser.incoming.method = methods[method]; + incoming.method = methods[method]; } else { // client only - parser.incoming.statusCode = statusCode; - parser.incoming.statusMessage = statusMessage; + incoming.statusCode = statusCode; + incoming.statusMessage = statusMessage; } - return parser.onIncoming(parser.incoming, shouldKeepAlive); + return parser.onIncoming(incoming, shouldKeepAlive); } // XXX This is a mess. // TODO: http.Parser should be a Writable emits request/response events. function parserOnBody(b, start, len) { - var parser = this; - var stream = parser.incoming; + const stream = this.incoming; // if the stream has already been removed, then drop it. - if (!stream) + if (stream === null) return; - var socket = stream.socket; - // pretend this was the result of a stream._read call. if (len > 0 && !stream._dumped) { var slice = b.slice(start, start + len); var ret = stream.push(slice); if (!ret) - readStop(socket); + readStop(this.socket); } } function parserOnMessageComplete() { - var parser = this; - var stream = parser.incoming; + const parser = this; + const stream = parser.incoming; - if (stream) { + if (stream !== null) { stream.complete = true; // Emit any trailing headers. - var headers = parser._headers; - if (headers) { - parser.incoming._addHeaderLines(headers, headers.length); + const headers = parser._headers; + if (headers.length) { + stream._addHeaderLines(headers, headers.length); parser._headers = []; parser._url = ''; } @@ -151,8 +148,8 @@ function parserOnMessageComplete() { } -var parsers = new FreeList('parsers', 1000, function() { - var parser = new HTTPParser(HTTPParser.REQUEST); +const parsers = new FreeList('parsers', 1000, function() { + const parser = new HTTPParser(HTTPParser.REQUEST); parser._headers = []; parser._url = ''; |