diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/HttpOutput.java b/jetty-server/src/main/java/org/eclipse/jetty/server/HttpOutput.java index d176e4093774..fb0ca7b2c023 100644 --- a/jetty-server/src/main/java/org/eclipse/jetty/server/HttpOutput.java +++ b/jetty-server/src/main/java/org/eclipse/jetty/server/HttpOutput.java @@ -270,7 +270,7 @@ void onWriteComplete(boolean last, Throwable failure) boolean release = false; synchronized (_channelState) { - if (_state == State.CLOSING || last) + if (_state == State.CLOSING || last || failure != null) { _state = State.CLOSED; callback = _closedCallback;