keith       2005/02/27 13:30:52

  Modified:    coyote/src/java/org/apache/coyote Tag: TOMCAT_5_0
                        Response.java
               coyote/src/java/org/apache/coyote/tomcat4 Tag: TOMCAT_5_0
                        OutputBuffer.java
               http11/src/java/org/apache/coyote/http11 Tag: TOMCAT_5_0
                        Http11Processor.java
  Log:
  Backport to 50 branch of fix to allow servlets to return
  multi-gb content-length headers
  
  - allow servlets to set content-length > Integer.MAX_VALUE via setHeader()
  - if servlet sets a content length in this manner, getContentLength will
    return -1 if cl > Integer.MAX_VALUE, so test getContentLengthLong to see
    if the cl was set.
  
  Revision  Changes    Path
  No                   revision
  No                   revision
  1.32.2.2  +5 -1      
jakarta-tomcat-connectors/coyote/src/java/org/apache/coyote/Response.java
  
  Index: Response.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-tomcat-connectors/coyote/src/java/org/apache/coyote/Response.java,v
  retrieving revision 1.32.2.1
  retrieving revision 1.32.2.2
  diff -u -r1.32.2.1 -r1.32.2.2
  --- Response.java     10 Feb 2005 05:25:41 -0000      1.32.2.1
  +++ Response.java     27 Feb 2005 21:30:51 -0000      1.32.2.2
  @@ -350,7 +350,7 @@
           }
           if( name.equalsIgnoreCase( "Content-Length" ) ) {
               try {
  -                int cL=Integer.parseInt( value );
  +                long cL=Long.parseLong( value );
                   setContentLength( cL );
                   return true;
               } catch( NumberFormatException ex ) {
  @@ -528,6 +528,10 @@
           this.contentLength = contentLength;
       }
   
  +    public void setContentLength(long contentLength) {
  +        this.contentLength = contentLength;
  +    }
  +    
       public int getContentLength() {
           long length = getContentLengthLong();
           
  
  
  
  No                   revision
  No                   revision
  1.13.2.1  +1 -1      
jakarta-tomcat-connectors/coyote/src/java/org/apache/coyote/tomcat4/OutputBuffer.java
  
  Index: OutputBuffer.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-tomcat-connectors/coyote/src/java/org/apache/coyote/tomcat4/OutputBuffer.java,v
  retrieving revision 1.13
  retrieving revision 1.13.2.1
  diff -u -r1.13 -r1.13.2.1
  --- OutputBuffer.java 24 Feb 2004 08:54:29 -0000      1.13
  +++ OutputBuffer.java 27 Feb 2005 21:30:51 -0000      1.13.2.1
  @@ -262,7 +262,7 @@
               return;
   
           if ((!coyoteResponse.isCommitted()) 
  -            && (coyoteResponse.getContentLength() == -1)) {
  +            && (coyoteResponse.getContentLengthLong() == -1)) {
               // Flushing the char buffer
               if (state == CHAR_STATE) {
                   cb.flushBuffer();
  
  
  
  No                   revision
  No                   revision
  1.100.2.4 +1 -1      
jakarta-tomcat-connectors/http11/src/java/org/apache/coyote/http11/Http11Processor.java
  
  Index: Http11Processor.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-tomcat-connectors/http11/src/java/org/apache/coyote/http11/Http11Processor.java,v
  retrieving revision 1.100.2.3
  retrieving revision 1.100.2.4
  diff -u -r1.100.2.3 -r1.100.2.4
  --- Http11Processor.java      10 Feb 2005 05:25:41 -0000      1.100.2.3
  +++ Http11Processor.java      27 Feb 2005 21:30:51 -0000      1.100.2.4
  @@ -1385,7 +1385,7 @@
           }
   
           // Check if suffisant len to trig the compression        
  -        int contentLength = response.getContentLength();
  +        long contentLength = response.getContentLengthLong();
           if ((contentLength == -1) 
               || (contentLength > compressionMinSize)) {
               // Check for compatible MIME-TYPE
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to