Author: markt
Date: Mon Aug 13 12:29:51 2012
New Revision: 1372394

URL: http://svn.apache.org/viewvc?rev=1372394&view=rev
Log:
Additional fix for http://issues.apache.org/bugzilla/show_bug.cgi?id=53584
Store decoded and original request URI. Restore both. Use decoded for matching.

Modified:
    tomcat/tc7.0.x/trunk/   (props changed)
    
tomcat/tc7.0.x/trunk/java/org/apache/catalina/authenticator/FormAuthenticator.java
    
tomcat/tc7.0.x/trunk/java/org/apache/catalina/authenticator/SavedRequest.java

Propchange: tomcat/tc7.0.x/trunk/
------------------------------------------------------------------------------
  Merged /tomcat/trunk:r1372390

Modified: 
tomcat/tc7.0.x/trunk/java/org/apache/catalina/authenticator/FormAuthenticator.java
URL: 
http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/catalina/authenticator/FormAuthenticator.java?rev=1372394&r1=1372393&r2=1372394&view=diff
==============================================================================
--- 
tomcat/tc7.0.x/trunk/java/org/apache/catalina/authenticator/FormAuthenticator.java
 (original)
+++ 
tomcat/tc7.0.x/trunk/java/org/apache/catalina/authenticator/FormAuthenticator.java
 Mon Aug 13 12:29:51 2012
@@ -498,12 +498,11 @@ public class FormAuthenticator
     }
 
       // Does the request URI match?
-      String requestURI = request.getDecodedRequestURI();
-      if (requestURI == null) {
+      String decodedRequestURI = request.getDecodedRequestURI();
+      if (decodedRequestURI == null) {
         return (false);
     }
-      return (requestURI.equals(sreq.getRequestURI()));
-
+      return (decodedRequestURI.equals(sreq.getDecodedRequestURI()));
     }
 
 
@@ -658,11 +657,11 @@ public class FormAuthenticator
 
         saved.setMethod(request.getMethod());
         saved.setQueryString(request.getQueryString());
-        saved.setRequestURI(request.getDecodedRequestURI());
+        saved.setRequestURI(request.getRequestURI());
+        saved.setDecodedRequestURI(request.getDecodedRequestURI());
 
         // Stash the SavedRequest in our session for later use
         session.setNote(Constants.FORM_REQUEST_NOTE, saved);
-
     }
 
 

Modified: 
tomcat/tc7.0.x/trunk/java/org/apache/catalina/authenticator/SavedRequest.java
URL: 
http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/catalina/authenticator/SavedRequest.java?rev=1372394&r1=1372393&r2=1372394&view=diff
==============================================================================
--- 
tomcat/tc7.0.x/trunk/java/org/apache/catalina/authenticator/SavedRequest.java 
(original)
+++ 
tomcat/tc7.0.x/trunk/java/org/apache/catalina/authenticator/SavedRequest.java 
Mon Aug 13 12:29:51 2012
@@ -147,6 +147,21 @@ public final class SavedRequest {
 
     
     /**
+     * The decode request URI associated with this Request. Path parameters are
+     * also excluded
+     */
+    private String decodedRequestURI = null;
+
+    public String getDecodedRequestURI() {
+        return (this.decodedRequestURI);
+    }
+
+    public void setDecodedRequestURI(String decodedRequestURI) {
+        this.decodedRequestURI = decodedRequestURI;
+    }
+
+
+    /**
      * The body of this request.
      */
     private ByteChunk body = null;



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

Reply via email to