You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by mg...@apache.org on 2014/01/16 11:53:13 UTC

[08/10] git commit: WICKET-5468 UrlRenderer#renderRelativeUrl potentially appends "/" after query parameters

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

(cherry picked from commit d9f50272e37b62a78f6a67c9b9f3f32f024d0ab8)


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

Branch: refs/heads/sandbox/preserve-page-parameters-and-execute-listener-interface-after-expiration
Commit: 4f9aa2d95ff064d81c49229b3c94d9c6a959cd36
Parents: 79c7cb2
Author: Martin Tzvetanov Grigorov <mg...@apache.org>
Authored: Wed Jan 15 12:02:00 2014 +0200
Committer: Martin Tzvetanov Grigorov <mg...@apache.org>
Committed: Wed Jan 15 12:02:36 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/4f9aa2d9/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/4f9aa2d9/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 a09542d..0c83d82 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 + '/';