Bug 1409078: Don't assume Gecko style backend on nsXBLPrototypeResources::FlushSkinSheets. r?heycam draft
authorEmilio Cobos Álvarez <emilio@crisal.io>
Mon, 16 Oct 2017 18:42:04 +0200
changeset 680951 995a167fa0b8b169e4c02c617506f4f51041f11d
parent 680950 5da7b50bc8db78f15af0e3055ac92d6ebf386924
child 736025 ea68c3dbcd6b8cb876fc425597f6d4f5aaec264e
push id84689
push userbmo:emilio@crisal.io
push dateMon, 16 Oct 2017 16:48:06 +0000
reviewersheycam
bugs1409078
milestone58.0a1
Bug 1409078: Don't assume Gecko style backend on nsXBLPrototypeResources::FlushSkinSheets. r?heycam MozReview-Commit-ID: 6ghFwpNhv6Z
dom/xbl/nsXBLPrototypeResources.cpp
--- a/dom/xbl/nsXBLPrototypeResources.cpp
+++ b/dom/xbl/nsXBLPrototypeResources.cpp
@@ -106,17 +106,23 @@ nsXBLPrototypeResources::FlushSkinSheets
     }
     else {
       newSheet = oldSheet;
     }
 
     mStyleSheetList.AppendElement(newSheet);
   }
 
-  GatherRuleProcessor();
+  if (doc->IsStyledByServo()) {
+    MOZ_ASSERT(doc->GetShell());
+    MOZ_ASSERT(doc->GetShell()->GetPresContext());
+    ComputeServoStyleSet(doc->GetShell()->GetPresContext());
+  } else {
+    GatherRuleProcessor();
+  }
 
   return NS_OK;
 }
 
 nsresult
 nsXBLPrototypeResources::Write(nsIObjectOutputStream* aStream)
 {
   if (mLoader)