Bug 1343937 - Fix a crash in nsWrapperCache.h

* Implement and use GetInFlowParent
* Exempt scrollbar NAC from the new NAC semantics

Tag #1375
This commit is contained in:
Matt A. Tobin 2020-04-16 17:51:36 -04:00 committed by Roy Tam
commit 8e51f64cad
5 changed files with 41 additions and 4 deletions

View file

@ -8951,10 +8951,10 @@ GetCorrectedParent(const nsIFrame* aFrame)
nsIContent* content = aFrame->GetContent();
Element* element =
content && content->IsElement() ? content->AsElement() : nullptr;
if (element && element->IsNativeAnonymous() &&
if (element && element->IsNativeAnonymous() && !element->IsNativeScrollbarContent() &&
element->GetPseudoElementType() == aFrame->StyleContext()->GetPseudoType()) {
while (parent->GetContent() && parent->GetContent()->IsNativeAnonymous()) {
parent = parent->GetParent();
parent = parent->GetInFlowParent();
}
}