summaryrefslogtreecommitdiff
path: root/lib/_http_outgoing.js
diff options
context:
space:
mode:
Diffstat (limited to 'lib/_http_outgoing.js')
-rw-r--r--lib/_http_outgoing.js8
1 files changed, 8 insertions, 0 deletions
diff --git a/lib/_http_outgoing.js b/lib/_http_outgoing.js
index d2c603bb30..32a51d120b 100644
--- a/lib/_http_outgoing.js
+++ b/lib/_http_outgoing.js
@@ -46,6 +46,7 @@ const {
ERR_INVALID_CHAR,
ERR_METHOD_NOT_IMPLEMENTED,
ERR_STREAM_CANNOT_PIPE,
+ ERR_STREAM_ALREADY_FINISHED,
ERR_STREAM_WRITE_AFTER_END
},
hideStackFrames
@@ -704,6 +705,13 @@ OutgoingMessage.prototype.end = function end(chunk, encoding, callback) {
}
if (this.finished) {
+ if (typeof callback === 'function') {
+ if (!this.writableFinished) {
+ this.on('finish', callback);
+ } else {
+ callback(new ERR_STREAM_ALREADY_FINISHED('end'));
+ }
+ }
return this;
}