tomcat-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From billbar...@apache.org
Subject cvs commit: jakarta-tomcat/src/facade22/org/apache/tomcat/facade RequestDispatcherImpl.java
Date Thu, 30 Sep 2004 06:02:39 GMT
billbarker    2004/09/29 23:02:39

  Modified:    src/facade22/org/apache/tomcat/facade
                        RequestDispatcherImpl.java
  Log:
  Set the correct query-string on forwards.
  
  The parameters are the sum of the forward URI and the request URI, but the query-string
is the one from the forward URI according to the spec.
  
  This still needs some work to handle the post-request clean-up.
  
  Fix for Bug #31474
  Reported By: Marc Daniels  mrdaniels@gmail.com
  
  Revision  Changes    Path
  1.29      +7 -5      jakarta-tomcat/src/facade22/org/apache/tomcat/facade/RequestDispatcherImpl.java
  
  Index: RequestDispatcherImpl.java
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat/src/facade22/org/apache/tomcat/facade/RequestDispatcherImpl.java,v
  retrieving revision 1.28
  retrieving revision 1.29
  diff -u -r1.28 -r1.29
  --- RequestDispatcherImpl.java	23 Feb 2004 06:06:13 -0000	1.28
  +++ RequestDispatcherImpl.java	30 Sep 2004 06:02:39 -0000	1.29
  @@ -193,7 +193,7 @@
   	//realRequest.query().recycle();
   	realRequest.servletPath().recycle();
   	realRequest.pathInfo().recycle();
  -    realRequest.setChild(null);
  +	realRequest.setChild(null);
   
   	// merge query string as specified in specs - before, it may affect
   	// the way the request is handled by special interceptors
  @@ -201,11 +201,11 @@
   	    // Process existing parameters, if not already done so
   	    // ( otherwise we'll process some twice )
   	    realRequest.parameters().handleQueryParameters();
  -	    // Set the query string - the sum of the new one and old one.
  +	    // Set the query string - the new one.
   	    String oldQS=realRequest.queryString().toString();
  -	    String newQS=(oldQS==null ) ? queryString : queryString + "&" +
  -		oldQS;
  -	    realRequest.queryString().setString(newQS);
  +	    // String newQS=(oldQS==null ) ? queryString : queryString + "&" +
  +	    //	oldQS;
  +	    realRequest.queryString().setString(queryString);
   
   	    // Process the additional parsm. We don't know if the old
   	    // params were processed ( so we need to make sure they are,
  @@ -215,6 +215,8 @@
   
   	    child.processParameters( queryString );
   	    //realRequest.parameters().processParameters( queryString ); 
  +	} else {
  +	    realRequest.queryString().recycle();
   	}
   	
   	// run the new request through the context manager
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: tomcat-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tomcat-dev-help@jakarta.apache.org


Mime
View raw message