Skip to content

Commit 558a8a4

Browse files
isaacsindexzero
authored andcommitted
resume() can throw
1 parent 84be9f2 commit 558a8a4

File tree

1 file changed

+30
-6
lines changed

1 file changed

+30
-6
lines changed

lib/node-http-proxy.js

+30-6
Original file line numberDiff line numberDiff line change
@@ -554,7 +554,11 @@ HttpProxy.prototype.proxyRequest = function (req, res, options) {
554554
//console.error('backpressure 554');
555555
response.pause();
556556
res.once('drain', function () {
557-
response.resume();
557+
try {
558+
response.resume();
559+
} catch (er) {
560+
console.error("response.resume error: %s", er.message);
561+
}
558562
});
559563
setTimeout(function () {
560564
res.emit('drain');
@@ -594,7 +598,11 @@ HttpProxy.prototype.proxyRequest = function (req, res, options) {
594598
//console.error('backpressure 594');
595599
req.pause();
596600
reverseProxy.once('drain', function () {
597-
req.resume();
601+
try {
602+
req.resume();
603+
} catch (er) {
604+
console.error("req.resume error: %s", er.message);
605+
}
598606
});
599607
setTimeout(function () {
600608
reverseProxy.emit('drain');
@@ -672,7 +680,11 @@ HttpProxy.prototype._forwardRequest = function (req) {
672680
//console.error('backpressure 672');
673681
req.pause();
674682
forwardProxy.once('drain', function () {
675-
req.resume();
683+
try {
684+
req.resume();
685+
} catch (er) {
686+
console.error("req.resume error: %s", er.message);
687+
}
676688
});
677689
setTimeout(function () {
678690
forwardProxy.emit('drain');
@@ -777,7 +789,11 @@ HttpProxy.prototype.proxyWebSocketRequest = function (req, socket, head, options
777789
//console.error('backpressure 777');
778790
proxySocket.pause();
779791
reverseProxy.incoming.socket.once('drain', function () {
780-
proxySocket.resume();
792+
try {
793+
proxySocket.resume();
794+
} catch (er) {
795+
console.error("proxySocket.resume error: %s", er.message);
796+
}
781797
});
782798
setTimeout(function () {
783799
reverseProxy.incoming.socket.emit('drain');
@@ -804,7 +820,11 @@ HttpProxy.prototype.proxyWebSocketRequest = function (req, socket, head, options
804820
//console.error('backpressure 804');
805821
reverseProxy.incoming.socket.pause();
806822
proxySocket.once('drain', function () {
807-
reverseProxy.incoming.socket.resume();
823+
try {
824+
reverseProxy.incoming.socket.resume();
825+
} catch (er) {
826+
console.error("reverseProxy.incoming.socket.resume error: %s", er.message);
827+
}
808828
});
809829
setTimeout(function () {
810830
proxySocket.emit('drain');
@@ -974,7 +994,11 @@ HttpProxy.prototype.proxyWebSocketRequest = function (req, socket, head, options
974994
//console.error('backpressure 974');
975995
reverseProxy.socket.pause();
976996
socket.once('drain', function () {
977-
reverseProxy.socket.resume();
997+
try {
998+
reverseProxy.socket.resume();
999+
} catch (er) {
1000+
console.error("reverseProxy.socket.resume error: %s", er.message);
1001+
}
9781002
});
9791003
setTimeout(function () {
9801004
socket.emit('drain');

0 commit comments

Comments
 (0)