summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--dom/xbl/nsBindingManager.cpp5
1 files changed, 2 insertions, 3 deletions
diff --git a/dom/xbl/nsBindingManager.cpp b/dom/xbl/nsBindingManager.cpp
index 6fb29ca871..8f18f112af 100644
--- a/dom/xbl/nsBindingManager.cpp
+++ b/dom/xbl/nsBindingManager.cpp
@@ -740,8 +740,8 @@ GetContentSetRuleProcessors(nsTHashtable<nsRefPtrHashKey<nsIContent>>* aContentS
// for its immediate binding, and one more for each binding in the
// inheritance chain. Additionally, a bound content may host multiple
// shadow roots, each with its own rule processor.
- nsXBLBinding *binding = boundContent->GetXBLBinding();
- if (binding) {
+ for (nsXBLBinding *binding = boundContent->GetXBLBinding(); binding;
+ binding = binding->GetBaseBinding()) {
nsIStyleRuleProcessor* ruleProc =
binding->PrototypeBinding()->GetRuleProcessor();
if (ruleProc) {
@@ -751,7 +751,6 @@ GetContentSetRuleProcessors(nsTHashtable<nsRefPtrHashKey<nsIContent>>* aContentS
set->PutEntry(ruleProc);
}
- binding = binding->GetBaseBinding();
if (shadowRoot) {
binding = shadowRoot->GetAssociatedBinding();
}