Bug 1349223 - do not assert if a document is unattached from tree when seding the events, r=jamie

This commit is contained in:
Alexander Surkov 2018-06-25 13:16:43 -04:00
Родитель 897d7e1991
Коммит b81b775fc0
1 изменённых файлов: 6 добавлений и 1 удалений

Просмотреть файл

@ -1338,8 +1338,13 @@ AccessibleWrap::GetHWNDFor(Accessible* aAccessible)
// their tab is within. Popups are always in the parent process, and so
// never proxied, which means this is basically correct.
Accessible* outerDoc = proxy->OuterDocOfRemoteBrowser();
NS_ASSERTION(outerDoc, "no outer doc for accessible remote tab!");
if (!outerDoc) {
// In some cases, the outer document accessible may be unattached from its
// document at this point, if it is scheduled for removal. Do not assert
// in such case. An example: putting aria-hidden="true" on HTML:iframe
// element will destroy iframe's document asynchroniously, but
// the document may be a target of selection events until then, and thus
// it may attempt to deliever these events to MSAA clients.
return nullptr;
}