close socket if upstream request fails

adds socket.end() to on('error') handlers for proxyReq and proxySocket
This commit is contained in:
MinRK 2014-09-30 19:55:54 -07:00
parent 43c6f0c7c0
commit c62766391e
2 changed files with 9 additions and 1 deletions

View File

@ -124,6 +124,7 @@ var passes = exports;
} else {
server.emit('error', err, req, socket);
}
socket.end();
}
}

View File

@ -280,17 +280,24 @@ describe('lib/http-proxy.js', function() {
client.on('open', function () {
client.send('hello there');
});
var count = 0;
function maybe_done () {
count += 1;
if (count === 2) done();
}
client.on('error', function (err) {
expect(err).to.be.an(Error);
expect(err.code).to.be('ECONNRESET');
maybe_done();
});
proxy.on('error', function (err) {
expect(err).to.be.an(Error);
expect(err.code).to.be('ECONNREFUSED');
proxyServer.close();
done();
maybe_done();
});
});