diff --git a/lib/http.js b/lib/http.js index 83273421cc3..3232d8397f8 100644 --- a/lib/http.js +++ b/lib/http.js @@ -1116,6 +1116,7 @@ Agent.prototype._getConnection = function(host, port, cb) { // start the process of establishing one. Agent.prototype._cycle = function() { debug("Agent _cycle sockets=" + this.sockets.length + " queue=" + this.queue.length); + var self = this; var first = this.queue[0]; if (!first) return; @@ -1133,6 +1134,7 @@ Agent.prototype._cycle = function() { // We found an available connection! this.queue.shift(); // remove first from queue. first.assignSocket(socket); + self._cycle(); // try to dispatch another return; }