Open Bug 1437119 Opened 2 years ago Updated 2 years ago

Assertion failure: !mChild->IsActiveChildrenElement(), at /src/dom/base/ChildIterator.cpp:166

Categories

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

60 Branch
defect

Tracking

()

Tracking Status
firefox60 --- affected

People

(Reporter: tsmith, Unassigned)

References

(Blocks 1 open bug)

Details

(Keywords: assertion, testcase, Whiteboard: a11y:crash-willrefresh)

Attachments

(1 file)

Attached file testcase.html
BuildID=20180209100327
SourceStamp=d49553765a743ebbd4f08e92a93c9d811ee064c2

Assertion failure: !mChild->IsActiveChildrenElement(), at /src/dom/base/ChildIterator.cpp:166

#0 mozilla::dom::ExplicitChildIterator::Seek(nsIContent const*) /src/dom/base/ChildIterator.cpp:166:5
#1 mozilla::dom::AllChildrenIterator::Seek(nsIContent const*) /src/dom/base/ChildIterator.cpp:326:32
#2 mozilla::a11y::TreeWalker::Next() /src/accessible/base/TreeWalker.cpp:216:14
#3 mozilla::a11y::HyperTextAccessible::DOMPointToOffset(nsINode*, int, bool) const /src/accessible/generic/HyperTextAccessible.cpp:287:29
#4 mozilla::a11y::SelectionManager::ProcessTextSelChangeEvent(mozilla::a11y::AccEvent*) /src/accessible/base/SelectionManager.cpp:154:29
#5 mozilla::a11y::EventQueue::ProcessEventQueue() /src/accessible/base/EventQueue.cpp:311:25
#6 mozilla::a11y::NotificationController::WillRefresh(mozilla::TimeStamp) /src/accessible/base/NotificationController.cpp:894:3
#7 nsRefreshDriver::Tick(long, mozilla::TimeStamp) /src/layout/base/nsRefreshDriver.cpp:1886:12
#8 mozilla::RefreshDriverTimer::TickRefreshDrivers(long, mozilla::TimeStamp, nsTArray<RefPtr<nsRefreshDriver> >&) /src/layout/base/nsRefreshDriver.cpp:310:7
#9 mozilla::RefreshDriverTimer::Tick(long, mozilla::TimeStamp) /src/layout/base/nsRefreshDriver.cpp:331:5
#10 mozilla::VsyncRefreshDriverTimer::RunRefreshDrivers(mozilla::TimeStamp) /src/layout/base/nsRefreshDriver.cpp:773:5
#11 mozilla::VsyncRefreshDriverTimer::RefreshDriverVsyncObserver::TickRefreshDriver(mozilla::TimeStamp) /src/layout/base/nsRefreshDriver.cpp:686:35
#12 mozilla::VsyncRefreshDriverTimer::RefreshDriverVsyncObserver::ParentProcessVsyncNotifier::Run() /src/layout/base/nsRefreshDriver.cpp:532:20
#13 nsThread::ProcessNextEvent(bool, bool*) /src/xpcom/threads/nsThread.cpp:1040:14
#14 NS_ProcessNextEvent(nsIThread*, bool) /src/xpcom/threads/nsThreadUtils.cpp:517:10
#15 mozilla::ipc::MessagePump::Run(base::MessagePump::Delegate*) /src/ipc/glue/MessagePump.cpp:97:21
#16 MessageLoop::RunInternal() /src/ipc/chromium/src/base/message_loop.cc:326:10
#17 MessageLoop::Run() /src/ipc/chromium/src/base/message_loop.cc:299:3
#18 nsBaseAppShell::Run() /src/widget/nsBaseAppShell.cpp:157:27
#19 nsAppStartup::Run() /src/toolkit/components/startup/nsAppStartup.cpp:288:30
#20 XREMain::XRE_mainRun() /src/toolkit/xre/nsAppRunner.cpp:4673:22
#21 XREMain::XRE_main(int, char**, mozilla::BootstrapConfig const&) /src/toolkit/xre/nsAppRunner.cpp:4808:8
#22 XRE_main(int, char**, mozilla::BootstrapConfig const&) /src/toolkit/xre/nsAppRunner.cpp:4900:21
#23 do_main(int, char**, char**) /src/browser/app/nsBrowserApp.cpp:231:22
#24 main /src/browser/app/nsBrowserApp.cpp:304:16
#25 __libc_start_main /build/glibc-Cl5G7W/glibc-2.23/csu/../csu/libc-start.c:291
#26 _start (firefox+0x423444)
Flags: in-testsuite?
Flags: needinfo?(emilio)
Err, sorry, didn't notice this was on a11y code... /me has no idea about those ChildIterator consumers :)
Component: Disability Access APIs → DOM
Flags: needinfo?(emilio)
Alexander, is this something you can take a look at?
Flags: needinfo?(surkov.alexander)
Priority: -- → P3
This should belong a11y component, so moving it.

Sure, I will as part of a11y stability works happening this/next Q.
Component: DOM → Disability Access APIs
Flags: needinfo?(surkov.alexander)
(In reply to Emilio Cobos Álvarez [:emilio] from comment #1)
> Err, sorry, didn't notice this was on a11y code... /me has no idea about
> those ChildIterator consumers :)

I know about consumers, but have no idea about the assertion :) Do you know what is it about?
Flags: needinfo?(emilio)
Whiteboard: a11y:crash-willrefresh
Sure, that means that someone Seek'd a <children> element, which is an element which isn't really part of the flat tree (so the iterator will misbehave, to some extent).
Flags: needinfo?(emilio)
You need to log in before you can comment on or make changes to this bug.