Bug 1357716 - stylo: Don't return uninitialized pointers from GetCSSStyleRules. r=xidorn
MozReview-Commit-ID: JPj6d27PALc
--- a/layout/inspector/inDOMUtils.cpp
+++ b/layout/inspector/inDOMUtils.cpp
@@ -294,21 +294,25 @@ inDOMUtils::GetCSSStyleRules(nsIDOMEleme
// Generate the map from raw rules to rules.
ruleList->FillStyleRuleHashtable(rawRulesToRules);
}
}
// Find matching rules in the table.
for (size_t j = 0; j < rawRuleCount; j++) {
const RawServoStyleRule* rawRule = rawRuleList.ElementAt(j);
- ServoStyleRule* rule;
- rawRulesToRules.Get(rawRule, &rule);
- MOZ_ASSERT(rule, "We should always be able to map a raw rule to a rule.");
- RefPtr<css::Rule> ruleObj(rule);
- rules->AppendElement(ruleObj, false);
+ ServoStyleRule* rule = nullptr;
+ if (rawRulesToRules.Get(rawRule, &rule)) {
+ MOZ_ASSERT(rule, "rule should not be null");
+ RefPtr<css::Rule> ruleObj(rule);
+ rules->AppendElement(ruleObj, false);
+ } else {
+ // FIXME (bug 1359217): Need a reliable way to map raw rules to rules.
+ NS_WARNING("stylo: Could not map raw rule to a rule.");
+ }
}
}
rules.forget(_retval);
return NS_OK;
}