Closed Bug 1405747 Opened 7 years ago Closed 7 years ago

crash near null in [@ mozilla::EditorBase::CanContainTag]

Categories

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

55 Branch
defect

Tracking

()

RESOLVED DUPLICATE of bug 1402904
Tracking Status
firefox-esr52 --- unaffected
firefox56 --- wontfix
firefox57 --- wontfix
firefox58 --- fixed

People

(Reporter: tsmith, Assigned: m_kato)

References

(Blocks 1 open bug)

Details

(Keywords: crash, testcase)

Attachments

(1 file)

Attached file test_case.html (deleted) —
==91927==ERROR: AddressSanitizer: SEGV on unknown address 0x000000000020 (pc 0x7f57ad86c36d bp 0x7ffcb2b7cd50 sp 0x7ffcb2b7cd50 T0)
==91927==The signal is caused by a READ memory access.
==91927==Hint: address points to the zero page.
    #0 0x7f57ad86c36c in get /src/obj-firefox/dist/include/mozilla/RefPtr.h:287:27
    #1 0x7f57ad86c36c in operator-> /src/obj-firefox/dist/include/mozilla/RefPtr.h:319
    #2 0x7f57ad86c36c in NodeType /src/dom/base/nsINode.h:586
    #3 0x7f57ad86c36c in mozilla::EditorBase::CanContainTag(nsINode&, nsIAtom&) /src/editor/libeditor/EditorBase.cpp:3543
    #4 0x7f57ad8d38fe in mozilla::HTMLEditRules::WillAlign(mozilla::dom::Selection&, nsTSubstring<char16_t> const&, bool*, bool*) /src/editor/libeditor/HTMLEditRules.cpp:4830:24
    #5 0x7f57ad8baf55 in mozilla::HTMLEditRules::WillDoAction(mozilla::dom::Selection*, mozilla::RulesInfo*, bool*, bool*) /src/editor/libeditor/HTMLEditRules.cpp:666:14
    #6 0x7f57ad94982e in mozilla::HTMLEditor::Align(nsTSubstring<char16_t> const&) /src/editor/libeditor/HTMLEditor.cpp:2214:24
    #7 0x7f57ada18b0f in nsMultiStateCommand::DoCommandParams(char const*, nsICommandParams*, nsISupports*) /src/editor/composer/nsComposerCommands.cpp:637:10
    #8 0x7f57abbb06f3 in nsControllerCommandTable::DoCommandParams(char const*, nsICommandParams*, nsISupports*) /src/dom/commandhandler/nsControllerCommandTable.cpp:162:26
    #9 0x7f57abba7724 in DoCommandWithParams /src/dom/commandhandler/nsBaseCommandController.cpp:152:25
    #10 0x7f57abba7724 in non-virtual thunk to nsBaseCommandController::DoCommandWithParams(char const*, nsICommandParams*) /src/dom/commandhandler/nsBaseCommandController.cpp:140
    #11 0x7f57abbad79b in nsCommandManager::DoCommand(char const*, nsICommandParams*, mozIDOMWindowProxy*) /src/dom/commandhandler/nsCommandManager.cpp:210:29
    #12 0x7f57ac0e21c2 in nsHTMLDocument::ExecCommand(nsTSubstring<char16_t> const&, bool, nsTSubstring<char16_t> const&, nsIPrincipal&, mozilla::ErrorResult&) /src/dom/html/nsHTMLDocument.cpp:3357:18
    #13 0x7f57ab607209 in mozilla::dom::HTMLDocumentBinding::execCommand(JSContext*, JS::Handle<JSObject*>, nsHTMLDocument*, JSJitMethodCallArgs const&) /src/obj-firefox/dom/bindings/HTMLDocumentBinding.cpp:891:21
    #14 0x7f57ab8e9e10 in mozilla::dom::GenericBindingMethod(JSContext*, unsigned int, JS::Value*) /src/dom/bindings/BindingUtils.cpp:3053:13
    #15 0x7f57b1d27494 in CallJSNative /src/js/src/jscntxtinlines.h:293:15
    #16 0x7f57b1d27494 in js::InternalCallOrConstruct(JSContext*, JS::CallArgs const&, js::MaybeConstruct) /src/js/src/vm/Interpreter.cpp:495
    #17 0x7f57b1d112f6 in CallFromStack /src/js/src/vm/Interpreter.cpp:546:12
    #18 0x7f57b1d112f6 in Interpret(JSContext*, js::RunState&) /src/js/src/vm/Interpreter.cpp:3085
    #19 0x7f57b1cf86b9 in js::RunScript(JSContext*, js::RunState&) /src/js/src/vm/Interpreter.cpp:435:12
    #20 0x7f57b1d2762c in js::InternalCallOrConstruct(JSContext*, JS::CallArgs const&, js::MaybeConstruct) /src/js/src/vm/Interpreter.cpp:513:15
    #21 0x7f57b1d27f82 in js::Call(JSContext*, JS::Handle<JS::Value>, JS::Handle<JS::Value>, js::AnyInvokeArgs const&, JS::MutableHandle<JS::Value>) /src/js/src/vm/Interpreter.cpp:559:10
    #22 0x7f57b276966b in JS::Call(JSContext*, JS::Handle<JS::Value>, JS::Handle<JS::Value>, JS::HandleValueArray const&, JS::MutableHandle<JS::Value>) /src/js/src/jsapi.cpp:2975:12
    #23 0x7f57ab323587 in mozilla::dom::EventListener::HandleEvent(JSContext*, JS::Handle<JS::Value>, mozilla::dom::Event&, mozilla::ErrorResult&) /src/obj-firefox/dom/bindings/EventListenerBinding.cpp:47:8
    #24 0x7f57abcc7d8f in HandleEvent<mozilla::dom::EventTarget *> /src/obj-firefox/dist/include/mozilla/dom/EventListenerBinding.h:65:12
    #25 0x7f57abcc7d8f in mozilla::EventListenerManager::HandleEventSubType(mozilla::EventListenerManager::Listener*, nsIDOMEvent*, mozilla::dom::EventTarget*) /src/dom/events/EventListenerManager.cpp:1109
    #26 0x7f57abcc9e32 in mozilla::EventListenerManager::HandleEventInternal(nsPresContext*, mozilla::WidgetEvent*, nsIDOMEvent**, mozilla::dom::EventTarget*, nsEventStatus*) /src/dom/events/EventListenerManager.cpp:1283:20
    #27 0x7f57abca99c1 in mozilla::EventTargetChainItem::HandleEventTargetChain(nsTArray<mozilla::EventTargetChainItem>&, mozilla::EventChainPostVisitor&, mozilla::EventDispatchingCallback*, mozilla::ELMCreationDetector&) /src/dom/events/EventDispatcher.cpp:462:16
    #28 0x7f57abcace92 in mozilla::EventDispatcher::Dispatch(nsISupports*, nsPresContext*, mozilla::WidgetEvent*, nsIDOMEvent*, nsEventStatus*, mozilla::EventDispatchingCallback*, nsTArray<mozilla::dom::EventTarget*>*) /src/dom/events/EventDispatcher.cpp:822:9
    #29 0x7f57abc7b69a in mozilla::EventDispatcher::DispatchDOMEvent(nsISupports*, mozilla::WidgetEvent*, nsIDOMEvent*, nsPresContext*, nsEventStatus*) /src/dom/events/EventDispatcher.cpp:891:12
    #30 0x7f57a9eb7d91 in nsINode::DispatchEvent(nsIDOMEvent*, bool*) /src/dom/base/nsINode.cpp:1341:5
    #31 0x7f57abc49765 in mozilla::AsyncEventDispatcher::Run() /src/dom/events/AsyncEventDispatcher.cpp:70:12
    #32 0x7f57a99d4f0f in nsContentUtils::RemoveScriptBlocker() /src/dom/base/nsContentUtils.cpp:5661:15
    #33 0x7f57a9dc3e19 in nsDocument::EndUpdate(unsigned int) /src/dom/base/nsDocument.cpp:5332:3
    #34 0x7f57ac0dfd7c in nsHTMLDocument::EndUpdate(unsigned int) /src/dom/html/nsHTMLDocument.cpp:2507:15
    #35 0x7f57a9baf5ed in ~mozAutoDocUpdate /src/dom/base/mozAutoDocUpdate.h:40:18
    #36 0x7f57a9baf5ed in mozilla::dom::Element::SetAttr(int, nsIAtom*, nsIAtom*, nsTSubstring<char16_t> const&, bool) /src/dom/base/Element.cpp:2546
    #37 0x7f57ab7b2ef0 in SetAttr /src/obj-firefox/dist/include/mozilla/dom/Element.h:696:12
    #38 0x7f57ab7b2ef0 in SetAttr /src/obj-firefox/dist/include/mozilla/dom/Element.h:1391
    #39 0x7f57ab7b2ef0 in SetHTMLAttr /src/dom/html/nsGenericHTMLElement.h:810
    #40 0x7f57ab7b2ef0 in SetAlign /src/obj-firefox/dist/include/mozilla/dom/HTMLTableCellElement.h:72
    #41 0x7f57ab7b2ef0 in mozilla::dom::HTMLTableCellElementBinding::set_align(JSContext*, JS::Handle<JSObject*>, mozilla::dom::HTMLTableCellElement*, JSJitSetterCallArgs) /src/obj-firefox/dom/bindings/HTMLTableCellElementBinding.cpp:426
    #42 0x7f57ab8e945a in mozilla::dom::GenericBindingSetter(JSContext*, unsigned int, JS::Value*) /src/dom/bindings/BindingUtils.cpp:3014:8
    #43 0x7f57b1d27494 in CallJSNative /src/js/src/jscntxtinlines.h:293:15
    #44 0x7f57b1d27494 in js::InternalCallOrConstruct(JSContext*, JS::CallArgs const&, js::MaybeConstruct) /src/js/src/vm/Interpreter.cpp:495
    #45 0x7f57b1d295a9 in InternalCall /src/js/src/vm/Interpreter.cpp:540:12
    #46 0x7f57b1d295a9 in Call /src/js/src/vm/Interpreter.cpp:559
    #47 0x7f57b1d295a9 in js::CallSetter(JSContext*, JS::Handle<JS::Value>, JS::Handle<JS::Value>, JS::Handle<JS::Value>) /src/js/src/vm/Interpreter.cpp:688
    #48 0x7f57b2cd7872 in SetExistingProperty(JSContext*, JS::Handle<js::NativeObject*>, JS::Handle<jsid>, JS::Handle<JS::Value>, JS::Handle<JS::Value>, JS::Handle<js::NativeObject*>, JS::Handle<JS::PropertyResult>, JS::ObjectOpResult&) /src/js/src/vm/NativeObject.cpp:2732:10
    #49 0x7f57b2cd084a in bool js::NativeSetProperty<(js::QualifiedBool)1>(JSContext*, JS::Handle<js::NativeObject*>, JS::Handle<jsid>, JS::Handle<JS::Value>, JS::Handle<JS::Value>, JS::ObjectOpResult&) /src/js/src/vm/NativeObject.cpp:2768:20
    #50 0x7f57b1d0aed0 in SetProperty /src/js/src/vm/NativeObject.h:1615:12
    #51 0x7f57b1d0aed0 in SetPropertyOperation /src/js/src/vm/Interpreter.cpp:269
    #52 0x7f57b1d0aed0 in Interpret(JSContext*, js::RunState&) /src/js/src/vm/Interpreter.cpp:2882
    #53 0x7f57b1cf86b9 in js::RunScript(JSContext*, js::RunState&) /src/js/src/vm/Interpreter.cpp:435:12
    #54 0x7f57b1d2762c in js::InternalCallOrConstruct(JSContext*, JS::CallArgs const&, js::MaybeConstruct) /src/js/src/vm/Interpreter.cpp:513:15
    #55 0x7f57b1d27f82 in js::Call(JSContext*, JS::Handle<JS::Value>, JS::Handle<JS::Value>, js::AnyInvokeArgs const&, JS::MutableHandle<JS::Value>) /src/js/src/vm/Interpreter.cpp:559:10
    #56 0x7f57b276966b in JS::Call(JSContext*, JS::Handle<JS::Value>, JS::Handle<JS::Value>, JS::HandleValueArray const&, JS::MutableHandle<JS::Value>) /src/js/src/jsapi.cpp:2975:12
    #57 0x7f57ab320605 in 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
    #58 0x7f57abcff5c1 in Call<nsISupports *> /src/obj-firefox/dist/include/mozilla/dom/EventHandlerBinding.h:362:12
    #59 0x7f57abcff5c1 in mozilla::JSEventHandler::HandleEvent(nsIDOMEvent*) /src/dom/events/JSEventHandler.cpp:215
    #60 0x7f57abcc7dc9 in mozilla::EventListenerManager::HandleEventSubType(mozilla::EventListenerManager::Listener*, nsIDOMEvent*, mozilla::dom::EventTarget*) /src/dom/events/EventListenerManager.cpp:1112:51
    #61 0x7f57abcc9e32 in mozilla::EventListenerManager::HandleEventInternal(nsPresContext*, mozilla::WidgetEvent*, nsIDOMEvent**, mozilla::dom::EventTarget*, nsEventStatus*) /src/dom/events/EventListenerManager.cpp:1283:20
    #62 0x7f57abca99c1 in mozilla::EventTargetChainItem::HandleEventTargetChain(nsTArray<mozilla::EventTargetChainItem>&, mozilla::EventChainPostVisitor&, mozilla::EventDispatchingCallback*, mozilla::ELMCreationDetector&) /src/dom/events/EventDispatcher.cpp:462:16
    #63 0x7f57abcace92 in mozilla::EventDispatcher::Dispatch(nsISupports*, nsPresContext*, mozilla::WidgetEvent*, nsIDOMEvent*, nsEventStatus*, mozilla::EventDispatchingCallback*, nsTArray<mozilla::dom::EventTarget*>*) /src/dom/events/EventDispatcher.cpp:822:9
    #64 0x7f57adf6f6ee in nsDocumentViewer::LoadComplete(nsresult) /src/layout/base/nsDocumentViewer.cpp:1081:7
    #65 0x7f57b0f19f31 in nsDocShell::EndPageLoad(nsIWebProgress*, nsIChannel*, nsresult) /src/docshell/base/nsDocShell.cpp:7760:21
    #66 0x7f57b0f15f54 in nsDocShell::OnStateChange(nsIWebProgress*, nsIRequest*, unsigned int, nsresult) /src/docshell/base/nsDocShell.cpp:7558:7
    #67 0x7f57b0f1d8ff in non-virtual thunk to nsDocShell::OnStateChange(nsIWebProgress*, nsIRequest*, unsigned int, nsresult) /src/docshell/base/nsDocShell.cpp:7455:13
    #68 0x7f57a8c26350 in nsDocLoader::DoFireOnStateChange(nsIWebProgress*, nsIRequest*, int&, nsresult) /src/uriloader/base/nsDocLoader.cpp:1320:3
    #69 0x7f57a8c2540c in nsDocLoader::doStopDocumentLoad(nsIRequest*, nsresult) /src/uriloader/base/nsDocLoader.cpp:861:14
    #70 0x7f57a8c223c8 in nsDocLoader::DocLoaderIsEmpty(bool) /src/uriloader/base/nsDocLoader.cpp:750:9
    #71 0x7f57a8c24205 in nsDocLoader::OnStopRequest(nsIRequest*, nsISupports*, nsresult) /src/uriloader/base/nsDocLoader.cpp:632:5
    #72 0x7f57a8c24e6c in non-virtual thunk to nsDocLoader::OnStopRequest(nsIRequest*, nsISupports*, nsresult) /src/uriloader/base/nsDocLoader.cpp:488:14
    #73 0x7f57a7204fcd in mozilla::net::nsLoadGroup::RemoveRequest(nsIRequest*, nsISupports*, nsresult) /src/netwerk/base/nsLoadGroup.cpp:629:28
    #74 0x7f57a9def20d in nsDocument::DoUnblockOnload() /src/dom/base/nsDocument.cpp:9328:18
    #75 0x7f57a9deedd1 in nsDocument::UnblockOnload(bool) /src/dom/base/nsDocument.cpp:9250:9
    #76 0x7f57a9dc8399 in nsDocument::DispatchContentLoadedEvents() /src/dom/base/nsDocument.cpp:5601:3
    #77 0x7f57a9e41b62 in applyImpl<nsDocument, void (nsDocument::*)()> /src/obj-firefox/dist/include/nsThreadUtils.h:1142:12
    #78 0x7f57a9e41b62 in apply<nsDocument, void (nsDocument::*)()> /src/obj-firefox/dist/include/nsThreadUtils.h:1148
    #79 0x7f57a9e41b62 in mozilla::detail::RunnableMethodImpl<nsDocument*, void (nsDocument::*)(), true, (mozilla::RunnableKind)0>::Run() /src/obj-firefox/dist/include/nsThreadUtils.h:1192
    #80 0x7f57a7057bf2 in nsThread::ProcessNextEvent(bool, bool*) /src/xpcom/threads/nsThread.cpp:1039:14
    #81 0x7f57a70718c8 in NS_ProcessNextEvent(nsIThread*, bool) /src/xpcom/threads/nsThreadUtils.cpp:524:10
    #82 0x7f57a7e02341 in mozilla::ipc::MessagePump::Run(base::MessagePump::Delegate*) /src/ipc/glue/MessagePump.cpp:97:21
    #83 0x7f57a7d646ab in RunInternal /src/ipc/chromium/src/base/message_loop.cc:326:10
    #84 0x7f57a7d646ab in RunHandler /src/ipc/chromium/src/base/message_loop.cc:319
    #85 0x7f57a7d646ab in MessageLoop::Run() /src/ipc/chromium/src/base/message_loop.cc:299
    #86 0x7f57ad723e9f in nsBaseAppShell::Run() /src/widget/nsBaseAppShell.cpp:158:27
    #87 0x7f57b187f8f1 in nsAppStartup::Run() /src/toolkit/components/startup/nsAppStartup.cpp:288:30
    #88 0x7f57b1a708bb in XREMain::XRE_mainRun() /src/toolkit/xre/nsAppRunner.cpp:4701:22
    #89 0x7f57b1a724d8 in XREMain::XRE_main(int, char**, mozilla::BootstrapConfig const&) /src/toolkit/xre/nsAppRunner.cpp:4865:8
    #90 0x7f57b1a7390b in XRE_main(int, char**, mozilla::BootstrapConfig const&) /src/toolkit/xre/nsAppRunner.cpp:4960:21
    #91 0x4ebfb3 in do_main /src/browser/app/nsBrowserApp.cpp:231:22
    #92 0x4ebfb3 in main /src/browser/app/nsBrowserApp.cpp:304
    #93 0x7f57c497b82f in __libc_start_main /build/glibc-bfm8X4/glibc-2.23/csu/../csu/libc-start.c:291
    #94 0x41db08 in _start (firefox+0x41db08)
Flags: in-testsuite?
INFO: Last good revision: f5c43a9f8510ad50cf45248fe306707aa059b991
INFO: First bad revision: e05f84ea2a338e172a55a0898e3551fff61abb0a
INFO: Pushlog:
https://hg.mozilla.org/integration/autoland/pushloghtml?fromchange=f5c43a9f8510ad50cf45248fe306707aa059b991&tochange=e05f84ea2a338e172a55a0898e3551fff61abb0a
Blocks: 1355792
Has Regression Range: --- → yes
Version: Trunk → 55 Branch
Assignee: nobody → m_kato
Priority: -- → P1
This is fixed by bug 1402904
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → DUPLICATE
Flags: in-testsuite? → in-testsuite+
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: