remm 00/11/09 13:16:02 Modified: catalina/src/share/org/apache/catalina/connector/http HttpResponseImpl.java Log: - Important bug fix : When the output stream was never requested by the client, the content length wasn't properly set (and a end of response chunk wasn't generated either). The finishResponse method of HttpResponseImpl will now take care of that. Thanks (a lot) to Ray Allis for mentioning that some OPTIONS requests were causing timeouts problems in some DAV clients. Hopefully, that also fixes the compatibility issues with those clients. Revision Changes Path 1.5 +27 -4 jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/connector/http/HttpResponseImpl.java Index: HttpResponseImpl.java =================================================================== RCS file: /home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/connector/http/HttpResponseImpl.java,v retrieving revision 1.4 retrieving revision 1.5 diff -u -r1.4 -r1.5 --- HttpResponseImpl.java 2000/11/09 20:15:50 1.4 +++ HttpResponseImpl.java 2000/11/09 21:16:02 1.5 @@ -1,7 +1,7 @@ /* - * $Header: /home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/connector/http/HttpResponseImpl.java,v 1.4 2000/11/09 20:15:50 remm Exp $ - * $Revision: 1.4 $ - * $Date: 2000/11/09 20:15:50 $ + * $Header: /home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/connector/http/HttpResponseImpl.java,v 1.5 2000/11/09 21:16:02 remm Exp $ + * $Revision: 1.5 $ + * $Date: 2000/11/09 21:16:02 $ * * ==================================================================== * @@ -78,7 +78,7 @@ * * @author Craig R. McClanahan * @author <a href="mailto:[EMAIL PROTECTED]">Remy Maucherat</a> - * @version $Revision: 1.4 $ $Date: 2000/11/09 20:15:50 $ + * @version $Revision: 1.5 $ $Date: 2000/11/09 21:16:02 $ */ final class HttpResponseImpl @@ -243,6 +243,29 @@ headers.remove(name); } } + + } + + + /** + * Has stream been created ? + */ + public boolean isStreamInitialized() { + return (responseStream != null); + } + + + /** + * Perform whatever actions are required to flush and close the output + * stream or writer, in a single operation. + * + * @exception IOException if an input/output error occurs + */ + public void finishResponse() throws IOException { + + if (!isStreamInitialized()) + setContentLength(0); + super.finishResponse(); } --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]