From 1f9f86349410f0a008f8d0df9aa66aed60f7a8e9 Mon Sep 17 00:00:00 2001 From: isaacs Date: Thu, 15 Aug 2013 14:55:43 -0700 Subject: [PATCH] http: Prefer 'binary' over 'ascii' It's faster, because it doesn't have to check that each char is in the ASCII plane. --- lib/_http_outgoing.js | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/lib/_http_outgoing.js b/lib/_http_outgoing.js index 77b78afe9c..886cad4523 100644 --- a/lib/_http_outgoing.js +++ b/lib/_http_outgoing.js @@ -122,7 +122,7 @@ OutgoingMessage.prototype._send = function(data, encoding, callback) { data = this._header + data; } else { this.output.unshift(this._header); - this.outputEncodings.unshift('ascii'); + this.outputEncodings.unshift('binary'); this.outputCallbacks.unshift(null); } this._headerSent = true; @@ -421,7 +421,7 @@ OutgoingMessage.prototype.write = function(chunk, encoding, callback) { if (this.connection) this.connection.cork(); - this._send(len.toString(16), 'ascii', null); + this._send(len.toString(16), 'binary', null); this._send(crlf_buf, null, null); this._send(chunk, encoding, null); ret = this._send(crlf_buf, null, callback); @@ -507,10 +507,10 @@ OutgoingMessage.prototype.end = function(data, encoding, callback) { } if (this.chunkedEncoding) { - ret = this._send('0\r\n' + this._trailer + '\r\n', 'ascii', finish); + ret = this._send('0\r\n' + this._trailer + '\r\n', 'binary', finish); } else { // Force a flush, HACK. - ret = this._send('', 'ascii', finish); + ret = this._send('', 'binary', finish); } if (this.connection && data)