Closed Bug 1887584 Opened 7 months ago Closed 7 months ago

Perma [tier 2] editor/libeditor/tests/test_nsIEditor_documentIsEmpty.html | assertion count 2 is more than expected 0 assertions after ASSERTION: We must reach document accessible implementing text interface!: 'Error', file SelectionManager.cpp

Categories

(Core :: Disability Access APIs, defect, P5)

defect

Tracking

()

RESOLVED FIXED
126 Branch
Tracking Status
firefox-esr115 --- unaffected
firefox124 --- unaffected
firefox125 --- unaffected
firefox126 --- fixed

People

(Reporter: intermittent-bug-filer, Assigned: Jamie)

References

(Regression)

Details

(4 keywords)

Attachments

(1 file)

Filed by: ncsoregi [at] mozilla.com
Parsed log: https://treeherder.mozilla.org/logviewer?job_id=452111861&repo=autoland
Full log: https://firefox-ci-tc.services.mozilla.com/api/queue/v1/task/LnTddhtMSdCmxUD_NIS7qA/runs/0/artifacts/public/logs/live_backing.log


[task 2024-03-25T04:38:41.482Z] 04:38:41     INFO - GECKO(6008) | [Child 7128, Main Thread] ###!!! ASSERTION: We must reach document accessible implementing text interface!: 'Error', file /builds/worker/checkouts/gecko/accessible/base/SelectionManager.cpp:219
[task 2024-03-25T04:38:41.483Z] 04:38:41     INFO - GECKO(6008) | #01: NS_DebugBreak(unsigned int, char const*, char const*, char const*, int) [xpcom/base/nsDebugImpl.cpp:491]
[task 2024-03-25T04:38:41.483Z] 04:38:41     INFO - GECKO(6008) | #02: mozilla::a11y::SelectionManager::ProcessSelectionChanged(mozilla::a11y::SelData*) [accessible/base/SelectionManager.cpp:234]
[task 2024-03-25T04:38:41.483Z] 04:38:41     INFO - GECKO(6008) | #03: mozilla::a11y::NotificationController::WillRefresh(mozilla::TimeStamp) [accessible/base/NotificationController.cpp:959]
[task 2024-03-25T04:38:41.484Z] 04:38:41     INFO - GECKO(6008) | #04: nsRefreshDriver::TickObserverArray(unsigned int, mozilla::TimeStamp) [layout/base/nsRefreshDriver.cpp:2448]
[task 2024-03-25T04:38:41.485Z] 04:38:41     INFO - GECKO(6008) | #05: nsRefreshDriver::Tick(mozilla::layers::BaseTransactionId<mozilla::VsyncIdType>, mozilla::TimeStamp, nsRefreshDriver::IsExtraTick) [layout/base/nsRefreshDriver.cpp:2738]
[task 2024-03-25T04:38:41.486Z] 04:38:41     INFO - GECKO(6008) | #06: mozilla::RefreshDriverTimer::TickRefreshDrivers(mozilla::layers::BaseTransactionId<mozilla::VsyncIdType>, mozilla::TimeStamp, nsTArray<RefPtr<nsRefreshDriver> >&) [layout/base/nsRefreshDriver.cpp:345]
[task 2024-03-25T04:38:41.486Z] 04:38:41     INFO - GECKO(6008) | #07: mozilla::RefreshDriverTimer::Tick(mozilla::layers::BaseTransactionId<mozilla::VsyncIdType>, mozilla::TimeStamp) [layout/base/nsRefreshDriver.cpp:363]
[task 2024-03-25T04:38:41.487Z] 04:38:41     INFO - GECKO(6008) | #08: mozilla::VsyncRefreshDriverTimer::RunRefreshDrivers(mozilla::layers::BaseTransactionId<mozilla::VsyncIdType>, mozilla::TimeStamp) [layout/base/nsRefreshDriver.cpp:952]
[task 2024-03-25T04:38:41.488Z] 04:38:41     INFO - GECKO(6008) | #09: mozilla::VsyncRefreshDriverTimer::TickRefreshDriver(mozilla::layers::BaseTransactionId<mozilla::VsyncIdType>, mozilla::TimeStamp) [layout/base/nsRefreshDriver.cpp:863]
[task 2024-03-25T04:38:41.489Z] 04:38:41     INFO - GECKO(6008) | #10: mozilla::VsyncRefreshDriverTimer::NotifyVsyncOnMainThread(mozilla::VsyncEvent const&) [layout/base/nsRefreshDriver.cpp:759]
[task 2024-03-25T04:38:41.489Z] 04:38:41     INFO - GECKO(6008) | #11: mozilla::VsyncRefreshDriverTimer::RefreshDriverVsyncObserver::NotifyVsyncTimerOnMainThread() [layout/base/nsRefreshDriver.cpp:592]
[task 2024-03-25T04:38:41.490Z] 04:38:41     INFO - GECKO(6008) | #12: mozilla::dom::VsyncMainChild::RecvNotify(mozilla::VsyncEvent const&, float const&) [dom/ipc/VsyncMainChild.cpp:67]
[task 2024-03-25T04:38:41.491Z] 04:38:41     INFO - GECKO(6008) | #13: mozilla::dom::PVsyncChild::OnMessageReceived(IPC::Message const&) [s3:gecko-generated-sources:f9ff542c6e5e2edb4b81610938f318481db54d58dc29d4953f317310cfcba6ae4b47f755eba281552e1bad3625793bd462aa70401898494444a085de30b5a58e/ipc/ipdl/PVsyncChild.cpp::237]
[task 2024-03-25T04:38:41.492Z] 04:38:41     INFO - GECKO(6008) | #14: mozilla::ipc::PBackgroundChild::OnMessageReceived(IPC::Message const&) [s3:gecko-generated-sources:0dc8bf5e3bea75eaeb1725cb4eeeefe54ad7f3584d36f5535b045639506d3f1ffcb7edad2e2b4866396bb8aa42fc8a9fcbae6f7788d7d0c7c4cdea2837946935/ipc/ipdl/PBackgroundChild.cpp::5559]
[task 2024-03-25T04:38:41.492Z] 04:38:41     INFO - GECKO(6008) | #15: mozilla::ipc::MessageChannel::DispatchAsyncMessage(mozilla::ipc::ActorLifecycleProxy*, IPC::Message const&) [ipc/glue/MessageChannel.cpp:1818]
[task 2024-03-25T04:38:41.493Z] 04:38:41     INFO - GECKO(6008) | #16: mozilla::ipc::MessageChannel::DispatchMessage(mozilla::ipc::ActorLifecycleProxy*, mozilla::UniquePtr<IPC::Message,mozilla::DefaultDelete<IPC::Message> >) [ipc/glue/MessageChannel.cpp:1737]
[task 2024-03-25T04:38:41.494Z] 04:38:41     INFO - GECKO(6008) | #17: mozilla::ipc::MessageChannel::RunMessage(mozilla::ipc::ActorLifecycleProxy*, mozilla::ipc::MessageChannel::MessageTask&) [ipc/glue/MessageChannel.cpp:1530]
[task 2024-03-25T04:38:41.494Z] 04:38:41     INFO - GECKO(6008) | #18: mozilla::ipc::MessageChannel::MessageTask::Run() [ipc/glue/MessageChannel.cpp:1637]
[task 2024-03-25T04:38:41.495Z] 04:38:41     INFO - GECKO(6008) | #19: mozilla::RunnableTask::Run() [xpcom/threads/TaskController.cpp:579]
[task 2024-03-25T04:38:41.496Z] 04:38:41     INFO - GECKO(6008) | #20: mozilla::TaskController::DoExecuteNextTaskOnlyMainThreadInternal(mozilla::detail::BaseAutoLock<mozilla::Mutex &> const&) [xpcom/threads/TaskController.cpp:905]
[task 2024-03-25T04:38:41.497Z] 04:38:41     INFO - GECKO(6008) | #21: mozilla::TaskController::ExecuteNextTaskOnlyMainThreadInternal(mozilla::detail::BaseAutoLock<mozilla::Mutex &> const&) [xpcom/threads/TaskController.cpp:728]
[task 2024-03-25T04:38:41.497Z] 04:38:41     INFO - GECKO(6008) | #22: mozilla::TaskController::ProcessPendingMTTask(bool) [xpcom/threads/TaskController.cpp:514]
[task 2024-03-25T04:38:41.497Z] 04:38:41     INFO - GECKO(6008) | #23: mozilla::detail::RunnableFunction<`lambda at /builds/worker/checkouts/gecko/xpcom/threads/TaskController.cpp:232:7'>::Run() [xpcom/threads/nsThreadUtils.h:549]
[task 2024-03-25T04:38:41.498Z] 04:38:41     INFO - GECKO(6008) | #24: nsThread::ProcessNextEvent(bool, bool*) [xpcom/threads/nsThread.cpp:1203]
[task 2024-03-25T04:38:41.499Z] 04:38:41     INFO - GECKO(6008) | #25: NS_ProcessNextEvent(nsIThread*, bool) [xpcom/threads/nsThreadUtils.cpp:480]
[task 2024-03-25T04:38:41.499Z] 04:38:41     INFO - GECKO(6008) | #26: mozilla::ipc::MessagePump::Run(base::MessagePump::Delegate*) [ipc/glue/MessagePump.cpp:85]
[task 2024-03-25T04:38:41.500Z] 04:38:41     INFO - GECKO(6008) | #27: MessageLoop::RunHandler() [ipc/chromium/src/base/message_loop.cc:364]
[task 2024-03-25T04:38:41.501Z] 04:38:41     INFO - GECKO(6008) | #28: MessageLoop::Run() [ipc/chromium/src/base/message_loop.cc:346]
[task 2024-03-25T04:38:41.501Z] 04:38:41     INFO - GECKO(6008) | #29: nsBaseAppShell::Run() [widget/nsBaseAppShell.cpp:150]
[task 2024-03-25T04:38:41.502Z] 04:38:41     INFO - GECKO(6008) | #30: nsAppShell::Run() [widget/windows/nsAppShell.cpp:822]
[task 2024-03-25T04:38:41.503Z] 04:38:41     INFO - GECKO(6008) | #31: XRE_RunAppShell() [toolkit/xre/nsEmbedFunctions.cpp:712]
[task 2024-03-25T04:38:41.503Z] 04:38:41     INFO - GECKO(6008) | #32: mozilla::ipc::MessagePumpForChildProcess::Run(base::MessagePump::Delegate*) [ipc/glue/MessagePump.cpp:235]
[task 2024-03-25T04:38:41.504Z] 04:38:41     INFO - GECKO(6008) | #33: MessageLoop::RunHandler() [ipc/chromium/src/base/message_loop.cc:364]
[task 2024-03-25T04:38:41.504Z] 04:38:41     INFO - GECKO(6008) | #34: MessageLoop::Run() [ipc/chromium/src/base/message_loop.cc:346]
[task 2024-03-25T04:38:41.504Z] 04:38:41     INFO - GECKO(6008) | #35: XRE_InitChildProcess(int, char**, XREChildData const*) [toolkit/xre/nsEmbedFunctions.cpp:651]
[task 2024-03-25T04:38:41.505Z] 04:38:41     INFO - GECKO(6008) | #36: NS_internal_main(int, char**, char**) [browser/app/nsBrowserApp.cpp:375]
[task 2024-03-25T04:38:41.505Z] 04:38:41     INFO - GECKO(6008) | #37: wmain(int, wchar_t**) [toolkit/xre/nsWindowsWMain.cpp:174]
[task 2024-03-25T04:38:41.506Z] 04:38:41     INFO - GECKO(6008) | #38: __scrt_common_main_seh() [/builds/worker/workspace/obj-build/browser/app/D:/a/_work/1/s/src/vctools/crt/vcstartup/src/startup/exe_common.inl:288]
[task 2024-03-25T04:38:41.507Z] 04:38:41     INFO - GECKO(6008) | #39: BaseThreadInitThunk [C:\Windows\System32\KERNEL32.DLL + 0x17344]
[task 2024-03-25T04:38:41.508Z] 04:38:41     INFO - GECKO(6008) | #40: RtlUserThreadStart [C:\Windows\SYSTEM32\ntdll.dll + 0x526b1]
[task 2024-03-25T04:38:41.509Z] 04:38:41     INFO - GECKO(6008) | [Child 7128, Main Thread] WARNING: NS_ENSURE_TRUE(mDoneSetup) failed: file /builds/worker/checkouts/gecko/editor/composer/nsEditingSession.cpp:1163
[task 2024-03-25T04:38:41.521Z] 04:38:41     INFO - TEST-UNEXPECTED-FAIL | editor/libeditor/tests/test_nsIEditor_documentIsEmpty.html | assertion count 2 is more than expected 0 assertions
[task 2024-03-25T04:38:41.521Z] 04:38:41     INFO - Buffered messages logged at 04:38:41

Hi Jamie, any chance you could take a look at this?
Thank you!

Flags: needinfo?(jteh)

We shouldn't be hitting this assertion and I don't understand why this test triggers it. That might be covered by bug 1126649.

However, the thing that changed here is the introduction of native UIA. It seems I unintentionally caused the a11y engine to be enabled if UIA is requested, even if native UIA is disabled.

Assignee: nobody → jteh
Component: DOM: Editor → Disability Access APIs
Flags: needinfo?(jteh)
See Also: → 1126649

I did consider the pref in my patches in bug 1886371.
nsWindow does a QI to IRawElementProviderSimple, which will deliberately fail if the UIA pref is disabled.
Unfortunately, i neglected to realise that it's already too late by that stage because we've already called nsWindow::GetAccessible, which instantiates the a11y engine.
Now, we check the UIA pref before we call GetAccessible.

Set release status flags based on info from the regressing bug 1886371

Pushed by jteh@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/935d47673d41 Don't unintentionally instantiate the a11y engine if UIA is requested but the UIA pref is disabled. r=rkraesig,win-reviewers
Status: NEW → RESOLVED
Closed: 7 months ago
Resolution: --- → FIXED
Target Milestone: --- → 126 Branch
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: