remm 2005/08/04 08:05:31
Modified: catalina/src/share/org/apache/catalina/servlets
DefaultServlet.java
webapps/docs changelog.xml
Log:
- 35978: Bad handling of single range requests greater than 2GB in the
DefaultServlet.
Revision Changes Path
1.39 +14 -3
jakarta-tomcat-catalina/catalina/src/share/org/apache/catalina/servlets/DefaultServlet.java
Index: DefaultServlet.java
===================================================================
RCS file:
/home/cvs/jakarta-tomcat-catalina/catalina/src/share/org/apache/catalina/servlets/DefaultServlet.java,v
retrieving revision 1.38
retrieving revision 1.39
diff -u -r1.38 -r1.39
--- DefaultServlet.java 5 May 2005 07:00:09 -0000 1.38
+++ DefaultServlet.java 4 Aug 2005 15:05:31 -0000 1.39
@@ -809,7 +809,12 @@
if (debug > 0)
log("DefaultServlet.serveFile: contentLength=" +
contentLength);
- response.setContentLength((int) contentLength);
+ if (contentLength < Integer.MAX_VALUE) {
+ response.setContentLength((int) contentLength);
+ } else {
+ // Set the content-length as String to be able to use a
long
+ response.setHeader("content-length", "" + contentLength);
+ }
}
InputStream renderResult = null;
@@ -854,7 +859,13 @@
+ range.start
+ "-" + range.end + "/"
+ range.length);
- response.setContentLength((int) (range.end - range.start +
1));
+ long length = range.end - range.start + 1;
+ if (length < Integer.MAX_VALUE) {
+ response.setContentLength((int) length);
+ } else {
+ // Set the content-length as String to be able to use a
long
+ response.setHeader("content-length", "" + length);
+ }
if (contentType != null) {
if (debug > 0)
1.354 +4 -0 jakarta-tomcat-catalina/webapps/docs/changelog.xml
Index: changelog.xml
===================================================================
RCS file: /home/cvs/jakarta-tomcat-catalina/webapps/docs/changelog.xml,v
retrieving revision 1.353
retrieving revision 1.354
diff -u -r1.353 -r1.354
--- changelog.xml 4 Aug 2005 13:06:56 -0000 1.353
+++ changelog.xml 4 Aug 2005 15:05:31 -0000 1.354
@@ -79,6 +79,10 @@
<bug>36020</bug>: Allow MemoryUserDatabase to work better on write
protected mediums,
submitted by Rainer Jung (remm)
</fix>
+ <fix>
+ <bug>35978</bug>: Bad handling of single range requests greater than
2GB in the DefaultServlet
+ (remm)
+ </fix>
</changelog>
</subsection>
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]