зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1756727: Return E_NOTIMPL for a remote document in MsaaDocAccessible::get_accValue. r=morgan
The code previously assumed that the base MsaaAccessible implementation would return failure for a remote Accessible. That is no longer true, so we crashed when we try to get the local DocAccessible. For now, we explicitly check for remote and return E_NOTIMPL in that case. Differential Revision: https://phabricator.services.mozilla.com/D139450
This commit is contained in:
Родитель
a9fcf6f459
Коммит
71e7b0d8cd
|
@ -153,9 +153,14 @@ MsaaDocAccessible::get_accValue(VARIANT aVarChild, BSTR __RPC_FAR* aValue) {
|
|||
HRESULT hr = MsaaAccessible::get_accValue(aVarChild, aValue);
|
||||
if (FAILED(hr) || *aValue || aVarChild.lVal != CHILDID_SELF) return hr;
|
||||
|
||||
DocAccessible* docAcc = DocAcc();
|
||||
// MsaaAccessible::get_accValue should have failed (and thus we should have
|
||||
// returned early) if the Accessible is dead.
|
||||
MOZ_ASSERT(mAcc);
|
||||
if (mAcc->IsRemote()) {
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
DocAccessible* docAcc = DocAcc();
|
||||
// This is not remote, so it must be a local DocAccessible.
|
||||
MOZ_ASSERT(docAcc);
|
||||
// If document is being used to create a widget, don't use the URL hack
|
||||
roles::Role role = docAcc->Role();
|
||||
|
|
Загрузка…
Ссылка в новой задаче