Bug 1344558 - Avoid OOM in nsSimpleURI::SetPath r=mcmanus draft
authorValentin Gosu <valentin.gosu@gmail.com>
Sun, 05 Mar 2017 22:55:45 +0100
changeset 493733 f3f1971f33d8fe6b560c1a9aca307219725713c6
parent 490433 1bc2ad020aee2830e0a7941f10958dbec108c254
child 547920 5b30526ef3118edceca4599374f06b8cb4c5c81b
push id47830
push uservalentin.gosu@gmail.com
push dateSun, 05 Mar 2017 21:56:47 +0000
reviewersmcmanus
bugs1344558
milestone54.0a1
Bug 1344558 - Avoid OOM in nsSimpleURI::SetPath r=mcmanus MozReview-Commit-ID: JWlN5Q6H59Q
netwerk/base/nsSimpleURI.cpp
--- a/netwerk/base/nsSimpleURI.cpp
+++ b/netwerk/base/nsSimpleURI.cpp
@@ -419,17 +419,20 @@ nsSimpleURI::GetPath(nsACString &result)
     return NS_OK;
 }
 
 NS_IMETHODIMP
 nsSimpleURI::SetPath(const nsACString &aPath)
 {
     NS_ENSURE_STATE(mMutable);
 
-    nsAutoCString path(aPath);
+    nsAutoCString path;
+    if (!path.Assign(aPath, fallible)) {
+        return NS_ERROR_OUT_OF_MEMORY;
+    }
     int32_t queryPos = path.FindChar('?');
     int32_t hashPos = path.FindChar('#');
 
     if (queryPos != kNotFound && hashPos != kNotFound && hashPos < queryPos) {
         queryPos = kNotFound;
     }
 
     nsAutoCString query;