Browse Source

http: reuse existing headers array for raw values

PR-URL: https://github.com/nodejs/node/pull/6533
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Fedor Indutny <fedor.indutny@gmail.com>
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
v6
Brian White 8 years ago
parent
commit
175ed520c1
No known key found for this signature in database GPG Key ID: 606D7358F94DA209
  1. 12
      lib/_http_incoming.js

12
lib/_http_incoming.js

@ -103,21 +103,17 @@ IncomingMessage.prototype.destroy = function destroy(error) {
IncomingMessage.prototype._addHeaderLines = _addHeaderLines; IncomingMessage.prototype._addHeaderLines = _addHeaderLines;
function _addHeaderLines(headers, n) { function _addHeaderLines(headers, n) {
if (headers && headers.length) { if (headers && headers.length) {
var raw, dest; var dest;
if (this.complete) { if (this.complete) {
raw = this.rawTrailers; this.rawTrailers = headers;
dest = this.trailers; dest = this.trailers;
} else { } else {
raw = this.rawHeaders; this.rawHeaders = headers;
dest = this.headers; dest = this.headers;
} }
for (var i = 0; i < n; i += 2) { for (var i = 0; i < n; i += 2) {
var k = headers[i]; this._addHeaderLine(headers[i], headers[i + 1], dest);
var v = headers[i + 1];
raw.push(k);
raw.push(v);
this._addHeaderLine(k, v, dest);
} }
} }
} }

Loading…
Cancel
Save