summaryrefslogtreecommitdiffstats
path: root/WebCore/platform
diff options
context:
space:
mode:
authorMelanie Clements <melanielc@google.com>2010-08-31 09:10:30 -0700
committerAndroid Git Automerger <android-git-automerger@android.com>2010-08-31 09:10:30 -0700
commitcd011297fda5b6f6093453d59c2624aaf878e2fb (patch)
treed81c7599e371f4b4604ec710a16ba446f032bca4 /WebCore/platform
parent586c86325776ca506c6380ab41f9e66a69704f45 (diff)
parentff93a851c578d0b570c84b3a83a41a4930e7107c (diff)
downloadexternal_webkit-cd011297fda5b6f6093453d59c2624aaf878e2fb.zip
external_webkit-cd011297fda5b6f6093453d59c2624aaf878e2fb.tar.gz
external_webkit-cd011297fda5b6f6093453d59c2624aaf878e2fb.tar.bz2
am ff93a851: Bug fix 2337042 <base> URL + <img> URL = URL that starts with "/."
Merge commit 'ff93a851c578d0b570c84b3a83a41a4930e7107c' into gingerbread-plus-aosp * commit 'ff93a851c578d0b570c84b3a83a41a4930e7107c': Bug fix 2337042 <base> URL + <img> URL = URL that starts with "/."
Diffstat (limited to 'WebCore/platform')
-rw-r--r--WebCore/platform/KURL.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/WebCore/platform/KURL.cpp b/WebCore/platform/KURL.cpp
index 79bb6e2..e790cc0 100644
--- a/WebCore/platform/KURL.cpp
+++ b/WebCore/platform/KURL.cpp
@@ -1287,6 +1287,13 @@ void KURL::parse(const char* url, const String* originalString)
if (m_protocolInHTTPFamily && hierarchical && pathEnd == pathStart)
*p++ = '/';
+#if PLATFORM(ANDROID)
+ // Remove any trailing '.' from base, in order to conform to RFC 3986 section 5.4
+ if (p[-1] == '.') {
+ p--;
+ }
+#endif /* PLATFORM(ANDROID) */
+
// add path, escaping bad characters
if (!hierarchical || !hasSlashDotOrDotDot(url))
appendEscapingBadChars(p, url + pathStart, pathEnd - pathStart);