Index: java/org/apache/catalina/connector/OutputBuffer.java =================================================================== --- java/org/apache/catalina/connector/OutputBuffer.java (revision 1132867) +++ java/org/apache/catalina/connector/OutputBuffer.java (working copy) @@ -228,6 +228,7 @@ bb.recycle(); closed = false; + doFlush = false; suspended = false; if (conv!= null) { @@ -310,15 +311,18 @@ if (suspended) return; - doFlush = true; - if (initial) { - coyoteResponse.sendHeaders(); - initial = false; + try { + doFlush = true; + if (initial) { + coyoteResponse.sendHeaders(); + initial = false; + } + if (bb.getLength() > 0) { + bb.flushBuffer(); + } + } finally { + doFlush = false; } - if (bb.getLength() > 0) { - bb.flushBuffer(); - } - doFlush = false; if (realFlush) { coyoteResponse.action(ActionCode.CLIENT_FLUSH,