Bug 1295103 - Check OriginAttributes::PopulateFromSuffix return value in DOMStorageDBThread r=honzab draft
authorKan-Ru Chen <kanru@kanru.info>
Mon, 15 Aug 2016 18:17:08 +0800
changeset 404362 f1a53553352c7fb7b7659947dc0064b01cca0379
parent 404361 a2be4b396fbb483e0e8d01f2050f3031c002399e
child 404363 790679ea5bef333f98783c7d3aeed1729b1a9b1f
push id27198
push userbmo:kchen@mozilla.com
push dateTue, 23 Aug 2016 10:29:41 +0000
reviewershonzab
bugs1295103
milestone51.0a1
Bug 1295103 - Check OriginAttributes::PopulateFromSuffix return value in DOMStorageDBThread r=honzab MozReview-Commit-ID: FSIgxWNf9s4
dom/storage/DOMStorageDBThread.cpp
--- a/dom/storage/DOMStorageDBThread.cpp
+++ b/dom/storage/DOMStorageDBThread.cpp
@@ -50,17 +50,18 @@ nsCString
 Scheme0Scope(DOMStorageCacheBridge* aCache)
 {
   nsCString result;
 
   nsCString suffix = aCache->OriginSuffix();
 
   PrincipalOriginAttributes oa;
   if (!suffix.IsEmpty()) {
-    oa.PopulateFromSuffix(suffix);
+    DebugOnly<bool> success = oa.PopulateFromSuffix(suffix);
+    MOZ_ASSERT(success);
   }
 
   if (oa.mAppId != nsIScriptSecurityManager::NO_APP_ID || oa.mInIsolatedMozBrowser) {
     result.AppendInt(oa.mAppId);
     result.Append(':');
     result.Append(oa.mInIsolatedMozBrowser ? 't' : 'f');
     result.Append(':');
   }
@@ -758,17 +759,18 @@ OriginAttrsPatternMatchSQLFunction::OnFu
 {
   nsresult rv;
 
   nsAutoCString suffix;
   rv = aFunctionArguments->GetUTF8String(0, suffix);
   NS_ENSURE_SUCCESS(rv, rv);
 
   PrincipalOriginAttributes oa;
-  oa.PopulateFromSuffix(suffix);
+  bool success = oa.PopulateFromSuffix(suffix);
+  NS_ENSURE_TRUE(success, NS_ERROR_FAILURE);
   bool result = mPattern.Matches(oa);
 
   RefPtr<nsVariant> outVar(new nsVariant());
   rv = outVar->SetAsBool(result);
   NS_ENSURE_SUCCESS(rv, rv);
 
   outVar.forget(aResult);
   return NS_OK;