Updated Branches:
  refs/heads/wicket-6.x e7dd6ea38 -> d9f50272e

WICKET-5468 UrlRenderer#renderRelativeUrl potentially appends "/" after query 
parameters


Project: http://git-wip-us.apache.org/repos/asf/wicket/repo
Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/d9f50272
Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/d9f50272
Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/d9f50272

Branch: refs/heads/wicket-6.x
Commit: d9f50272e37b62a78f6a67c9b9f3f32f024d0ab8
Parents: e7dd6ea
Author: Martin Tzvetanov Grigorov <[email protected]>
Authored: Wed Jan 15 12:02:00 2014 +0200
Committer: Martin Tzvetanov Grigorov <[email protected]>
Committed: Wed Jan 15 12:02:00 2014 +0200

----------------------------------------------------------------------
 .../org/apache/wicket/request/cycle/UrlRendererTest.java | 11 +++++++++++
 .../main/java/org/apache/wicket/request/UrlRenderer.java |  4 ++--
 2 files changed, 13 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/wicket/blob/d9f50272/wicket-core/src/test/java/org/apache/wicket/request/cycle/UrlRendererTest.java
----------------------------------------------------------------------
diff --git 
a/wicket-core/src/test/java/org/apache/wicket/request/cycle/UrlRendererTest.java
 
b/wicket-core/src/test/java/org/apache/wicket/request/cycle/UrlRendererTest.java
index dc257be..3fecf79 100644
--- 
a/wicket-core/src/test/java/org/apache/wicket/request/cycle/UrlRendererTest.java
+++ 
b/wicket-core/src/test/java/org/apache/wicket/request/cycle/UrlRendererTest.java
@@ -214,6 +214,17 @@ public class UrlRendererTest extends Assert
        }
 
        /**
+        * https://issues.apache.org/jira/browse/WICKET-5468
+        */
+       @Test
+       public void renderUrlWithTrailingDotsInQueryString()
+       {
+               UrlRenderer r1 = new UrlRenderer(new 
MockWebRequest(Url.parse("some/path")));
+
+               assertEquals("./path?a=b..", 
r1.renderUrl(Url.parse("some/path?a=b..")));
+       }
+
+       /**
         * Verify that absolute urls are rendered as is, ignoring the current 
client url and base url
         * completely.
         * 

http://git-wip-us.apache.org/repos/asf/wicket/blob/d9f50272/wicket-request/src/main/java/org/apache/wicket/request/UrlRenderer.java
----------------------------------------------------------------------
diff --git 
a/wicket-request/src/main/java/org/apache/wicket/request/UrlRenderer.java 
b/wicket-request/src/main/java/org/apache/wicket/request/UrlRenderer.java
index 4ed6397..8a5f451 100644
--- a/wicket-request/src/main/java/org/apache/wicket/request/UrlRenderer.java
+++ b/wicket-request/src/main/java/org/apache/wicket/request/UrlRenderer.java
@@ -290,8 +290,8 @@ public class UrlRenderer
                        renderedUrl = "./" + renderedUrl;
                }
 
-               // sanitize end
-               if (renderedUrl.endsWith(".."))
+               // add trailing slash if the url has no query string and ends 
with ..
+               if (renderedUrl.indexOf('?') == -1 && 
renderedUrl.endsWith(".."))
                {
                        // WICKET-4401
                        renderedUrl = renderedUrl + '/';

Reply via email to