Open Bug 1401915 Opened 7 years ago Updated 2 years ago

nsLabelsNodeList ASSERTION in debug build: These should always be in sync! at dom/base/nsINode.cpp, line 308

Categories

(Core :: DOM: Core & HTML, defect, P2)

defect

Tracking

()

People

(Reporter: jdai, Unassigned)

Details

This is a follow-up bug from bug 1401726, it shows assertions in debug build when running trigger.html (attachment 8910475 [details]).

[Child 2553, Main Thread] ###!!! ASSERTION: These should always be in sync!: 'slowNode == node', file /home/john/workspace/john/workspace/firefox/dom/base/nsINode.cpp, line 308
#01: nsINode::SubtreeRoot() const (/home/john/workspace/john/workspace/firefox/dom/base/nsINode.cpp:308 (discriminator 1))
#02: nsGenericHTMLElement::UnbindFromTree(bool, bool) (/home/john/workspace/john/workspace/firefox/dom/html/nsGenericHTMLElement.cpp:534)
#03: nsGenericHTMLFormElement::UnbindFromTree(bool, bool) (/home/john/workspace/john/workspace/firefox/dom/html/nsGenericHTMLElement.cpp:1942)
#04: mozilla::dom::HTMLButtonElement::UnbindFromTree(bool, bool) (/home/john/workspace/john/workspace/firefox/dom/html/HTMLButtonElement.cpp:350)
#05: mozilla::dom::Element::UnbindFromTree(bool, bool) (/home/john/workspace/john/workspace/firefox/dom/base/Element.cpp:1988 (discriminator 2))
#06: nsGenericHTMLElement::UnbindFromTree(bool, bool) (/home/john/workspace/john/workspace/firefox/dom/html/nsGenericHTMLElement.cpp:538)
#07: mozilla::dom::HTMLSharedElement::UnbindFromTree(bool, bool) (/home/john/workspace/john/workspace/firefox/dom/html/HTMLSharedElement.cpp:292)
#08: nsINode::doRemoveChildAt(unsigned int, bool, nsIContent*, nsAttrAndChildArray&) (/home/john/workspace/john/workspace/firefox/dom/base/nsINode.cpp:1923)
#09: mozilla::dom::FragmentOrElement::RemoveChildAt(unsigned int, bool) (/home/john/workspace/john/workspace/firefox/dom/base/FragmentOrElement.cpp:1365)
#10: nsINode::RemoveChild(nsINode&, mozilla::ErrorResult&) (/home/john/workspace/john/workspace/firefox/dom/base/nsINode.cpp:605)
#11: nsRange::SurroundContents(nsINode&, mozilla::ErrorResult&) (/home/john/workspace/john/workspace/firefox/dom/base/nsRange.cpp:3014)
#12: mozilla::dom::RangeBinding::surroundContents(JSContext*, JS::Handle<JSObject*>, nsRange*, JSJitMethodCallArgs const&) (/home/john/workspace/john/workspace/firefox/obj-x86_64-pc-linux-gnu/dom/bindings/RangeBinding.cpp:1103)
#13: mozilla::dom::GenericBindingMethod(JSContext*, unsigned int, JS::Value*) (/home/john/workspace/john/workspace/firefox/dom/bindings/BindingUtils.cpp:3055)
#14: js::CallJSNative(JSContext*, bool (*)(JSContext*, unsigned int, JS::Value*), JS::CallArgs const&) (/home/john/workspace/john/workspace/firefox/js/src/jscntxtinlines.h:293)
#15: js::InternalCallOrConstruct(JSContext*, JS::CallArgs const&, js::MaybeConstruct) (/home/john/workspace/john/workspace/firefox/js/src/vm/Interpreter.cpp:495)
#16: InternalCall(JSContext*, js::AnyInvokeArgs const&) (/home/john/workspace/john/workspace/firefox/js/src/vm/Interpreter.cpp:541)
#17: js::CallFromStack(JSContext*, JS::CallArgs const&) (/home/john/workspace/john/workspace/firefox/js/src/vm/Interpreter.cpp:547)
#18: Interpret(JSContext*, js::RunState&) (/home/john/workspace/john/workspace/firefox/js/src/vm/Interpreter.cpp:3084)
#19: js::RunScript(JSContext*, js::RunState&) (/home/john/workspace/john/workspace/firefox/js/src/vm/Interpreter.cpp:435)
#20: js::ExecuteKernel(JSContext*, JS::Handle<JSScript*>, JSObject&, JS::Value const&, js::AbstractFramePtr, JS::Value*) (/home/john/workspace/john/workspace/firefox/js/src/vm/Interpreter.cpp:724)
#21: js::Execute(JSContext*, JS::Handle<JSScript*>, JSObject&, JS::Value*) (/home/john/workspace/john/workspace/firefox/js/src/vm/Interpreter.cpp:757)
#22: ExecuteScript(JSContext*, JS::Handle<JSObject*>, JS::Handle<JSScript*>, JS::Value*) (/home/john/workspace/john/workspace/firefox/js/src/jsapi.cpp:4648)
#23: ExecuteScript(JSContext*, JS::AutoObjectVector&, JS::Handle<JSScript*>, JS::Value*) (/home/john/workspace/john/workspace/firefox/js/src/jsapi.cpp:4667)
#24: JS_ExecuteScript(JSContext*, JS::AutoObjectVector&, JS::Handle<JSScript*>, JS::MutableHandle<JS::Value>) (/home/john/workspace/john/workspace/firefox/js/src/jsapi.cpp:4689)
#25: nsJSUtils::ExecutionContext::CompileAndExec(JS::CompileOptions&, JS::SourceBufferHolder&, JS::MutableHandle<JSScript*>) (/home/john/workspace/john/workspace/firefox/dom/base/nsJSUtils.cpp:265)
#26: mozilla::dom::ScriptLoader::EvaluateScript(mozilla::dom::ScriptLoadRequest*) (/home/john/workspace/john/workspace/firefox/dom/script/ScriptLoader.cpp:2244)
#27: mozilla::dom::ScriptLoader::ProcessRequest(mozilla::dom::ScriptLoadRequest*) (/home/john/workspace/john/workspace/firefox/dom/script/ScriptLoader.cpp:1884)
#28: mozilla::dom::ScriptLoader::ProcessScriptElement(nsIScriptElement*) (/home/john/workspace/john/workspace/firefox/dom/script/ScriptLoader.cpp:1585)
#29: mozilla::dom::ScriptElement::MaybeProcessScript() (/home/john/workspace/john/workspace/firefox/dom/script/ScriptElement.cpp:149)
#30: nsIScriptElement::AttemptToExecute() (/home/john/workspace/john/workspace/firefox/obj-x86_64-pc-linux-gnu/dist/include/nsIScriptElement.h:225)
#31: nsHtml5TreeOpExecutor::RunScript(nsIContent*) (/home/john/workspace/john/workspace/firefox/parser/html/nsHtml5TreeOpExecutor.cpp:701)
#32: nsHtml5TreeOpExecutor::RunFlushLoop() (/home/john/workspace/john/workspace/firefox/parser/html/nsHtml5TreeOpExecutor.cpp:505)
#33: nsHtml5ExecutorFlusher::Run() (/home/john/workspace/john/workspace/firefox/parser/html/nsHtml5StreamParser.cpp:132)
#34: mozilla::SchedulerGroup::Runnable::Run() (/home/john/workspace/john/workspace/firefox/xpcom/threads/SchedulerGroup.cpp:396)
#35: nsThread::ProcessNextEvent(bool, bool*) (/home/john/workspace/john/workspace/firefox/xpcom/threads/nsThread.cpp:1035)
#36: NS_ProcessNextEvent(nsIThread*, bool) (/home/john/workspace/john/workspace/firefox/xpcom/threads/nsThreadUtils.cpp:521)
#37: mozilla::ipc::MessagePump::Run(base::MessagePump::Delegate*) (/home/john/workspace/john/workspace/firefox/ipc/glue/MessagePump.cpp:125)
#38: mozilla::ipc::MessagePumpForChildProcess::Run(base::MessagePump::Delegate*) (/home/john/workspace/john/workspace/firefox/ipc/glue/MessagePump.cpp:302)
#39: MessageLoop::RunInternal() (/home/john/workspace/john/workspace/firefox/ipc/chromium/src/base/message_loop.cc:327)
#40: MessageLoop::RunHandler() (/home/john/workspace/john/workspace/firefox/ipc/chromium/src/base/message_loop.cc:320)
#41: MessageLoop::Run() (/home/john/workspace/john/workspace/firefox/ipc/chromium/src/base/message_loop.cc:298)
#42: nsBaseAppShell::Run() (/home/john/workspace/john/workspace/firefox/widget/nsBaseAppShell.cpp:160)
#43: XRE_RunAppShell() (/home/john/workspace/john/workspace/firefox/toolkit/xre/nsEmbedFunctions.cpp:880)
#44: mozilla::ipc::MessagePumpForChildProcess::Run(base::MessagePump::Delegate*) (/home/john/workspace/john/workspace/firefox/ipc/glue/MessagePump.cpp:269)
#45: MessageLoop::RunInternal() (/home/john/workspace/john/workspace/firefox/ipc/chromium/src/base/message_loop.cc:327)
#46: MessageLoop::RunHandler() (/home/john/workspace/john/workspace/firefox/ipc/chromium/src/base/message_loop.cc:320)
#47: MessageLoop::Run() (/home/john/workspace/john/workspace/firefox/ipc/chromium/src/base/message_loop.cc:298)
#48: XRE_InitChildProcess(int, char**, XREChildData const*) (/home/john/workspace/john/workspace/firefox/toolkit/xre/nsEmbedFunctions.cpp:709)
#49: mozilla::BootstrapImpl::XRE_InitChildProcess(int, char**, XREChildData const*) (/home/john/workspace/john/workspace/firefox/toolkit/xre/Bootstrap.cpp:66)
#50: content_process_main(mozilla::Bootstrap*, int, char**) (/home/john/workspace/john/workspace/firefox/browser/app/../../ipc/contentproc/plugin-container.cpp:63)
#51: main (/home/john/workspace/john/workspace/firefox/browser/app/nsBrowserApp.cpp:285)
#52: __libc_start_main (/build/glibc-bfm8X4/glibc-2.23/csu/../csu/libc-start.c:325)
#53: _start (/home/john/workspace/john/workspace/firefox/obj-x86_64-pc-linux-gnu/dist/bin/firefox)
#54: ??? (???:???)
Priority: -- → P2
Assignee: jdai → nobody
Component: DOM → DOM: Core & HTML
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.