diff --git a/accessible/base/nsAccessibilityService.cpp b/accessible/base/nsAccessibilityService.cpp index 483c0b7ef2f9..3b83b7c96383 100644 --- a/accessible/base/nsAccessibilityService.cpp +++ b/accessible/base/nsAccessibilityService.cpp @@ -48,6 +48,7 @@ #ifdef XP_WIN # include "mozilla/a11y/Compatibility.h" # include "mozilla/dom/ContentChild.h" +# include "mozilla/StaticPrefs_accessibility.h" # include "mozilla/StaticPtr.h" #endif @@ -1222,7 +1223,8 @@ bool nsAccessibilityService::Init() { MOZ_ASSERT(contentChild); // If we were instantiated by the chrome process, GetMsaaID() will return // a non-zero value and we may safely continue with initialization. - if (!contentChild->GetMsaaID()) { + if (!StaticPrefs::accessibility_cache_enabled_AtStartup() && + !contentChild->GetMsaaID()) { // Since we were not instantiated by chrome, we need to synchronously // obtain a MSAA content process id. contentChild->SendGetA11yContentId(); diff --git a/accessible/windows/msaa/MsaaAccessible.cpp b/accessible/windows/msaa/MsaaAccessible.cpp index 02c6c45890d7..90658439909c 100644 --- a/accessible/windows/msaa/MsaaAccessible.cpp +++ b/accessible/windows/msaa/MsaaAccessible.cpp @@ -169,6 +169,9 @@ int32_t MsaaAccessible::GetChildIDFor(Accessible* aAccessible) { /* static */ uint32_t MsaaAccessible::GetContentProcessIdFor( dom::ContentParentId aIPCContentId) { + if (StaticPrefs::accessibility_cache_enabled_AtStartup()) { + return 0; + } return sIDGen.GetContentProcessIDFor(aIPCContentId); } diff --git a/dom/ipc/ContentChild.cpp b/dom/ipc/ContentChild.cpp index eabf2a664023..56fb912cb1a5 100644 --- a/dom/ipc/ContentChild.cpp +++ b/dom/ipc/ContentChild.cpp @@ -43,6 +43,7 @@ #include "mozilla/SharedStyleSheetCache.h" #include "mozilla/SimpleEnumerator.h" #include "mozilla/SpinEventLoopUntil.h" +#include "mozilla/StaticPrefs_accessibility.h" #include "mozilla/StaticPrefs_dom.h" #include "mozilla/StaticPrefs_fission.h" #include "mozilla/StaticPrefs_media.h" @@ -2469,7 +2470,8 @@ mozilla::ipc::IPCResult ContentChild::RecvActivateA11y( MOZ_ASSERT(aMainChromeTid != 0); mMainChromeTid = aMainChromeTid; - MOZ_ASSERT(aMsaaID != 0); + MOZ_ASSERT(StaticPrefs::accessibility_cache_enabled_AtStartup() ? !aMsaaID + : aMsaaID); mMsaaID = aMsaaID; # endif // XP_WIN