Open Bug 1416923 Opened 7 years ago Updated 2 years ago

Assertion failure: mParent->GetChildAt(Offset()) == mRef->GetNextSibling() [@ mozilla::EditorBase::GetPreviousNodeInternal]

Categories

(Core :: DOM: Editor, defect, P3)

58 Branch
defect

Tracking

()

Tracking Status
firefox58 --- affected

People

(Reporter: tsmith, Unassigned)

References

(Blocks 1 open bug)

Details

(Keywords: assertion, testcase)

Attachments

(1 file)

Attached file testcase.html (deleted) —
Assertion failure: mParent->GetChildAt(Offset()) == mRef->GetNextSibling(), at /src/obj-firefox/dist/include/mozilla/RangeBoundary.h:138 #0 mozilla::RangeBoundaryBase<nsINode*, nsIContent*>::GetChildAtOffset() const /src/obj-firefox/dist/include/mozilla/RangeBoundary.h:139:12 #1 mozilla::EditorBase::GetPreviousNodeInternal(mozilla::EditorDOMPointBase<nsINode*, nsIContent*> const&, bool, bool) /src/editor/libeditor/EditorBase.cpp:3322:14 #2 mozilla::HTMLEditRules::GetPromotedPoint(mozilla::HTMLEditRules::RulesEndpoint, nsINode&, int, EditAction) /src/editor/libeditor/HTMLEditRules.cpp:5757:31 #3 mozilla::HTMLEditRules::PromoteRange(nsRange&, EditAction) /src/editor/libeditor/HTMLEditRules.cpp:5964:5 #4 mozilla::HTMLEditRules::GetPromotedRanges(mozilla::dom::Selection&, nsTArray<RefPtr<nsRange> >&, EditAction) /src/editor/libeditor/HTMLEditRules.cpp:5893:5 #5 mozilla::HTMLEditRules::GetNodesFromSelection(mozilla::dom::Selection&, EditAction, nsTArray<mozilla::OwningNonNull<nsINode> >&, mozilla::HTMLEditRules::TouchContent) /src/editor/libeditor/HTMLEditRules.cpp:6556:3 #6 mozilla::HTMLEditRules::GetListActionNodes(nsTArray<mozilla::OwningNonNull<nsINode> >&, mozilla::HTMLEditRules::EntireList, mozilla::HTMLEditRules::TouchContent) /src/editor/libeditor/HTMLEditRules.cpp:6219:19 #7 mozilla::HTMLEditRules::GetListState(bool*, bool*, bool*, bool*) /src/editor/libeditor/HTMLEditRules.cpp:736:17 #8 mozilla::HTMLEditor::GetListState(bool*, bool*, bool*, bool*) /src/editor/libeditor/HTMLEditor.cpp:1912:21 #9 GetListState(mozilla::HTMLEditor*, bool*, nsTSubstring<char16_t>&) /src/editor/composer/nsComposerCommands.cpp:1575:30 #10 nsRemoveListCommand::IsCommandEnabled(char const*, nsISupports*, bool*) /src/editor/composer/nsComposerCommands.cpp:436:17 #11 nsControllerCommandTable::IsCommandEnabled(char const*, nsISupports*, bool*) /src/dom/commandhandler/nsControllerCommandTable.cpp:98:26 #12 nsBaseCommandController::IsCommandEnabled(char const*, bool*) /src/dom/commandhandler/nsBaseCommandController.cpp:105:25 #13 nsWindowRoot::GetEnabledDisabledCommandsForControllers(nsIControllers*, nsTHashtable<nsCharPtrHashKey>&, nsTArray<nsTString<char> >&, nsTArray<nsTString<char> >&) /src/dom/base/nsWindowRoot.cpp:329:25 #14 nsWindowRoot::GetEnabledDisabledCommands(nsTArray<nsTString<char> >&, nsTArray<nsTString<char> >&) /src/dom/base/nsWindowRoot.cpp:355:5 #15 ChildCommandDispatcher::Run() /src/dom/base/nsGlobalWindow.cpp:10127:11 #16 nsContentUtils::AddScriptRunner(already_AddRefed<nsIRunnable>) /src/dom/base/nsContentUtils.cpp:5809:13 #17 nsContentUtils::AddScriptRunner(nsIRunnable*) /src/dom/base/nsContentUtils.cpp:5816:3 #18 nsGlobalWindow::UpdateCommands(nsTSubstring<char16_t> const&, nsISelection*, short) /src/dom/base/nsGlobalWindow.cpp:10167:7 #19 non-virtual thunk to nsGlobalWindow::UpdateCommands(nsTSubstring<char16_t> const&, nsISelection*, short) /src/dom/base/nsGlobalWindow.cpp:10162:17 #20 nsDocViewerSelectionListener::NotifySelectionChanged(nsIDOMDocument*, nsISelection*, short) /src/layout/base/nsDocumentViewer.cpp:3787:16 #21 mozilla::dom::Selection::NotifySelectionListeners() /src/dom/base/Selection.cpp:3894:15 #22 nsFrameSelection::NotifySelectionListeners(mozilla::SelectionType) /src/layout/generic/nsFrameSelection.cpp:2053:23 #23 mozilla::dom::Selection::Extend(nsINode&, unsigned int, mozilla::ErrorResult&) /src/dom/base/Selection.cpp:3255:25 #24 mozilla::dom::Selection::Extend(nsINode*, int) /src/dom/base/Selection.cpp:2970:3 #25 nsFrameSelection::TakeFocus(nsIContent*, unsigned int, unsigned int, mozilla::CaretAssociationHint, bool, bool) /src/layout/generic/nsFrameSelection.cpp:1493:34 #26 nsFrameSelection::MoveCaret(nsDirection, bool, nsSelectionAmount, nsFrameSelection::CaretMovementStyle) /src/layout/generic/nsFrameSelection.cpp:937:14 #27 mozilla::dom::Selection::Modify(nsTSubstring<char16_t> const&, nsTSubstring<char16_t> const&, nsTSubstring<char16_t> const&, mozilla::ErrorResult&) /src/dom/base/Selection.cpp:4060:24 #28 mozilla::dom::SelectionBinding::modify(JSContext*, JS::Handle<JSObject*>, mozilla::dom::Selection*, JSJitMethodCallArgs const&) /src/obj-firefox/dom/bindings/SelectionBinding.cpp:918:9 #29 mozilla::dom::GenericBindingMethod(JSContext*, unsigned int, JS::Value*) /src/dom/bindings/BindingUtils.cpp:3040:13 #30 js::CallJSNative(JSContext*, bool (*)(JSContext*, unsigned int, JS::Value*), JS::CallArgs const&) /src/js/src/jscntxtinlines.h:291:15 #31 js::InternalCallOrConstruct(JSContext*, JS::CallArgs const&, js::MaybeConstruct) /src/js/src/vm/Interpreter.cpp:473:16 #32 InternalCall(JSContext*, js::AnyInvokeArgs const&) /src/js/src/vm/Interpreter.cpp:522:12 #33 Interpret(JSContext*, js::RunState&) /src/js/src/vm/Interpreter.cpp:3098:18 #34 js::RunScript(JSContext*, js::RunState&) /src/js/src/vm/Interpreter.cpp:423:12 #35 js::InternalCallOrConstruct(JSContext*, JS::CallArgs const&, js::MaybeConstruct) /src/js/src/vm/Interpreter.cpp:495:15 #36 InternalCall(JSContext*, js::AnyInvokeArgs const&) /src/js/src/vm/Interpreter.cpp:522:12 #37 js::Call(JSContext*, JS::Handle<JS::Value>, JS::Handle<JS::Value>, js::AnyInvokeArgs const&, JS::MutableHandle<JS::Value>) /src/js/src/vm/Interpreter.cpp:541:10 #38 JS::Call(JSContext*, JS::Handle<JS::Value>, JS::Handle<JS::Value>, JS::HandleValueArray const&, JS::MutableHandle<JS::Value>) /src/js/src/jsapi.cpp:3032:12 #39 mozilla::dom::EventHandlerNonNull::Call(JSContext*, JS::Handle<JS::Value>, mozilla::dom::Event&, JS::MutableHandle<JS::Value>, mozilla::ErrorResult&) /src/obj-firefox/dom/bindings/EventHandlerBinding.cpp:260:37 #40 void mozilla::dom::EventHandlerNonNull::Call<nsISupports*>(nsISupports* const&, mozilla::dom::Event&, JS::MutableHandle<JS::Value>, mozilla::ErrorResult&, char const*, mozilla::dom::CallbackObject::ExceptionHandling, JSCompartment*) /src/obj-firefox/dist/include/mozilla/dom/EventHandlerBinding.h:362:12 #41 mozilla::JSEventHandler::HandleEvent(nsIDOMEvent*) /src/dom/events/JSEventHandler.cpp:215:12 #42 mozilla::EventListenerManager::HandleEventSubType(mozilla::EventListenerManager::Listener*, nsIDOMEvent*, mozilla::dom::EventTarget*) /src/dom/events/EventListenerManager.cpp:1118:51 #43 mozilla::EventListenerManager::HandleEventInternal(nsPresContext*, mozilla::WidgetEvent*, nsIDOMEvent**, mozilla::dom::EventTarget*, nsEventStatus*) /src/dom/events/EventListenerManager.cpp:1293:20 #44 mozilla::EventTargetChainItem::HandleEvent(mozilla::EventChainPostVisitor&, mozilla::ELMCreationDetector&) /src/dom/events/EventDispatcher.cpp:313:17 #45 mozilla::EventTargetChainItem::HandleEventTargetChain(nsTArray<mozilla::EventTargetChainItem>&, mozilla::EventChainPostVisitor&, mozilla::EventDispatchingCallback*, mozilla::ELMCreationDetector&) /src/dom/events/EventDispatcher.cpp:462:16 #46 mozilla::EventDispatcher::Dispatch(nsISupports*, nsPresContext*, mozilla::WidgetEvent*, nsIDOMEvent*, nsEventStatus*, mozilla::EventDispatchingCallback*, nsTArray<mozilla::dom::EventTarget*>*) /src/dom/events/EventDispatcher.cpp:826:9 #47 nsDocumentViewer::LoadComplete(nsresult) /src/layout/base/nsDocumentViewer.cpp:1064:7 #48 nsDocShell::EndPageLoad(nsIWebProgress*, nsIChannel*, nsresult) /src/docshell/base/nsDocShell.cpp:7779:21 #49 nsDocShell::OnStateChange(nsIWebProgress*, nsIRequest*, unsigned int, nsresult) /src/docshell/base/nsDocShell.cpp:7577:7 #50 non-virtual thunk to nsDocShell::OnStateChange(nsIWebProgress*, nsIRequest*, unsigned int, nsresult) /src/docshell/base/nsDocShell.cpp:7474:13 #51 nsDocLoader::DoFireOnStateChange(nsIWebProgress*, nsIRequest*, int&, nsresult) /src/uriloader/base/nsDocLoader.cpp:1321:3 #52 nsDocLoader::doStopDocumentLoad(nsIRequest*, nsresult) /src/uriloader/base/nsDocLoader.cpp:862:14 #53 nsDocLoader::DocLoaderIsEmpty(bool) /src/uriloader/base/nsDocLoader.cpp:751:9 #54 nsDocLoader::OnStopRequest(nsIRequest*, nsISupports*, nsresult) /src/uriloader/base/nsDocLoader.cpp:633:5 #55 non-virtual thunk to nsDocLoader::OnStopRequest(nsIRequest*, nsISupports*, nsresult) /src/uriloader/base/nsDocLoader.cpp:489:14 #56 mozilla::net::nsLoadGroup::RemoveRequest(nsIRequest*, nsISupports*, nsresult) /src/netwerk/base/nsLoadGroup.cpp:629:28 #57 nsDocument::DoUnblockOnload() /src/dom/base/nsDocument.cpp:9401:18 #58 nsDocument::UnblockOnload(bool) /src/dom/base/nsDocument.cpp:9323:9 #59 nsDocument::DispatchContentLoadedEvents() /src/dom/base/nsDocument.cpp:5688:3 #60 mozilla::detail::RunnableMethodImpl<nsDocument*, void (nsDocument::*)(), true, (mozilla::RunnableKind)0>::Run() /src/obj-firefox/dist/include/nsThreadUtils.h:1192:13 #61 mozilla::SchedulerGroup::Runnable::Run() /src/xpcom/threads/SchedulerGroup.cpp:396:25 #62 nsThread::ProcessNextEvent(bool, bool*) /src/xpcom/threads/nsThread.cpp:1037:14 #63 NS_ProcessNextEvent(nsIThread*, bool) /src/xpcom/threads/nsThreadUtils.cpp:513:10 #64 mozilla::ipc::MessagePump::Run(base::MessagePump::Delegate*) /src/ipc/glue/MessagePump.cpp:97:21 #65 MessageLoop::RunInternal() /src/ipc/chromium/src/base/message_loop.cc:326:10 #66 MessageLoop::Run() /src/ipc/chromium/src/base/message_loop.cc:299:3 #67 nsBaseAppShell::Run() /src/widget/nsBaseAppShell.cpp:159:27 #68 XRE_RunAppShell() /src/toolkit/xre/nsEmbedFunctions.cpp:877:22 #69 mozilla::ipc::MessagePumpForChildProcess::Run(base::MessagePump::Delegate*) /src/ipc/glue/MessagePump.cpp:269:9 #70 MessageLoop::RunInternal() /src/ipc/chromium/src/base/message_loop.cc:326:10 #71 MessageLoop::Run() /src/ipc/chromium/src/base/message_loop.cc:299:3 #72 XRE_InitChildProcess(int, char**, XREChildData const*) /src/toolkit/xre/nsEmbedFunctions.cpp:703:34 #73 content_process_main(mozilla::Bootstrap*, int, char**) /src/browser/app/../../ipc/contentproc/plugin-container.cpp:63:30 #74 main /src/browser/app/nsBrowserApp.cpp:280:18 #75 __libc_start_main /build/glibc-bfm8X4/glibc-2.23/csu/../csu/libc-start.c:291 #76 _start (firefox+0x41ebe4)
Flags: in-testsuite?
Priority: -- → P3
This is assertion only
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: