2011-03-28 Maciej Stachowiak <mjs@apple.com>
[WebKit.git] / Source / WebCore / platform / KURL.cpp
index f0d1a24348f9a8e29c68f88b70840045e0f558f3..8c8646e9861c4671dfcb7d48c80bfb1e3010a1d3 100644 (file)
@@ -859,7 +859,11 @@ void KURL::setPath(const String& s)
 
     // FIXME: encodeWithURLEscapeSequences does not correctly escape '#' and '?', so fragment and query parts
     // may be inadvertently affected.
-    parse(m_string.left(m_portEnd) + encodeWithURLEscapeSequences(s) + m_string.substring(m_pathEnd));
+    String path = s;
+    if (path.isEmpty() || path[0] != '/')
+        path = "/" + path;
+
+    parse(m_string.left(m_portEnd) + encodeWithURLEscapeSequences(path) + m_string.substring(m_pathEnd));
 }
 
 String KURL::prettyURL() const