Bug 1369317 - Do not escape the returned string in nsSimpleURI::GetAsciiSpec r=mcmanus draft
authorValentin Gosu <valentin.gosu@gmail.com>
Sun, 13 Aug 2017 10:03:10 +0200
changeset 645526 726bda4f13bdab7c3e22eed29f6a8cd9bccb024f
parent 644169 5322c03f4c8587fe526172d3f87160031faa6d75
child 645527 b465a6bff65297c2e119c3b0a262825788f8346a
push id73775
push uservalentin.gosu@gmail.com
push dateSun, 13 Aug 2017 08:03:58 +0000
reviewersmcmanus
bugs1369317
milestone57.0a1
Bug 1369317 - Do not escape the returned string in nsSimpleURI::GetAsciiSpec r=mcmanus The spec is already escaped in SetSpec,SetQuery,SetRef - so there is no need to escape it again in the getter. MozReview-Commit-ID: C0279q5nLXl
netwerk/base/nsSimpleURI.cpp
--- a/netwerk/base/nsSimpleURI.cpp
+++ b/netwerk/base/nsSimpleURI.cpp
@@ -690,22 +690,22 @@ nsSimpleURI::CloneInternal(nsSimpleURI::
 NS_IMETHODIMP
 nsSimpleURI::Resolve(const nsACString &relativePath, nsACString &result)
 {
     result = relativePath;
     return NS_OK;
 }
 
 NS_IMETHODIMP
-nsSimpleURI::GetAsciiSpec(nsACString &result)
+nsSimpleURI::GetAsciiSpec(nsACString &aResult)
 {
-    nsAutoCString buf;
-    nsresult rv = GetSpec(buf);
+    nsresult rv = GetSpec(aResult);
     if (NS_FAILED(rv)) return rv;
-    return NS_EscapeURL(buf, esc_OnlyNonASCII|esc_AlwaysCopy, result, fallible);
+    MOZ_ASSERT(IsASCII(aResult), "The spec should be ASCII");
+    return NS_OK;
 }
 
 NS_IMETHODIMP
 nsSimpleURI::GetAsciiHostPort(nsACString &result)
 {
     // XXX This behavior mimics GetHostPort.
     return NS_ERROR_FAILURE;
 }