Open Bug 1473153 Opened 2 years ago Updated 2 years ago

crash at null in [@ nsFindContentIterator::PositionAt]

Categories

(Toolkit :: Find Toolbar, defect, P3)

defect

Tracking

()

Tracking Status
firefox63 --- affected

People

(Reporter: tsmith, Unassigned)

References

(Blocks 1 open bug)

Details

(Keywords: crash, testcase)

Attachments

(1 file)

Attached file testcase.html
==41144==ERROR: AddressSanitizer: SEGV on unknown address 0x000000000000 (pc 0x7f20078118d8 bp 0x7ffef5f3f6d0 sp 0x7ffef5f3f6a0 T0)
==41144==The signal is caused by a READ memory access.
==41144==Hint: address points to the zero page.
    #0 0x7f20078118d7 in nsFindContentIterator::PositionAt(nsINode*) src/toolkit/components/find/nsFind.cpp:283:24
    #1 0x7f2007815b13 in nsFind::Find(char16_t const*, nsRange*, nsRange*, nsRange*, nsRange**) src/toolkit/components/find/nsFind.cpp:1281:51
    #2 0x7f2007819b72 in nsWebBrowserFind::SearchInFrame(nsPIDOMWindowOuter*, bool, bool*) src/toolkit/components/find/nsWebBrowserFind.cpp:726:14
    #3 0x7f2007817c5b in nsWebBrowserFind::FindNext(bool*) src/toolkit/components/find/nsWebBrowserFind.cpp:112:8
    #4 0x7f1ffeef8f2f in nsGlobalWindowOuter::FindOuter(nsTSubstring<char16_t> const&, bool, bool, bool, bool, bool, bool, mozilla::ErrorResult&) src/dom/base/nsGlobalWindowOuter.cpp:6367:20
    #5 0x7f2000aa25b0 in mozilla::dom::Window_Binding::find(JSContext*, JS::Handle<JSObject*>, nsGlobalWindowInner*, JSJitMethodCallArgs const&) src/obj-firefox/dom/bindings/WindowBinding.cpp:5256:21
    #6 0x7f2001693131 in bool mozilla::dom::binding_detail::GenericMethod<mozilla::dom::binding_detail::MaybeGlobalThisPolicy, mozilla::dom::binding_detail::ThrowExceptions>(JSContext*, unsigned int, JS::Value*) src/dom/bindings/BindingUtils.cpp:3319:13
    #7 0x7f2007fcd90e in CallJSNative src/js/src/vm/Interpreter.cpp:443:15
    #8 0x7f2007fcd90e in js::InternalCallOrConstruct(JSContext*, JS::CallArgs const&, js::MaybeConstruct) src/js/src/vm/Interpreter.cpp:531
    #9 0x7f2007fb8385 in CallFromStack src/js/src/vm/Interpreter.cpp:588:12
    #10 0x7f2007fb8385 in Interpret(JSContext*, js::RunState&) src/js/src/vm/Interpreter.cpp:3195
    #11 0x7f2007f9dd6a in js::RunScript(JSContext*, js::RunState&) src/js/src/vm/Interpreter.cpp:423:12
    #12 0x7f2007fce1e4 in js::InternalCallOrConstruct(JSContext*, JS::CallArgs const&, js::MaybeConstruct) src/js/src/vm/Interpreter.cpp:555:15
    #13 0x7f2007fcf772 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:601:10
    #14 0x7f2008af69ca in JS::Call(JSContext*, JS::Handle<JS::Value>, JS::Handle<JS::Value>, JS::HandleValueArray const&, JS::MutableHandle<JS::Value>) src/js/src/jsapi.cpp:2887:12
    #15 0x7f2000e328cc 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:264:37
    #16 0x7f2001e05cfc in void mozilla::dom::EventHandlerNonNull::Call<nsISupports*>(nsISupports* const&, mozilla::dom::Event&, JS::MutableHandle<JS::Value>, mozilla::ErrorResult&, char const*, mozilla::dom::CallbackObject::ExceptionHandling, JS::Realm*) src/obj-firefox/dist/include/mozilla/dom/EventHandlerBinding.h:363:12
    #17 0x7f2001e035ea in mozilla::JSEventHandler::HandleEvent(mozilla::dom::Event*) src/dom/events/JSEventHandler.cpp:214:12
    #18 0x7f2001dc9b0e in mozilla::EventListenerManager::HandleEventSubType(mozilla::EventListenerManager::Listener*, mozilla::dom::Event*, mozilla::dom::EventTarget*) src/dom/events/EventListenerManager.cpp:1124:52
    #19 0x7f2001dcb22c in mozilla::EventListenerManager::HandleEventInternal(nsPresContext*, mozilla::WidgetEvent*, mozilla::dom::Event**, mozilla::dom::EventTarget*, nsEventStatus*) src/dom/events/EventListenerManager.cpp:1298:20
    #20 0x7f2001db3c5c in mozilla::EventTargetChainItem::HandleEventTargetChain(nsTArray<mozilla::EventTargetChainItem>&, mozilla::EventChainPostVisitor&, mozilla::EventDispatchingCallback*, mozilla::ELMCreationDetector&) src/dom/events/EventDispatcher.cpp:622:16
    #21 0x7f2001db91fd in mozilla::EventDispatcher::Dispatch(nsISupports*, nsPresContext*, mozilla::WidgetEvent*, mozilla::dom::Event*, nsEventStatus*, mozilla::EventDispatchingCallback*, nsTArray<mozilla::dom::EventTarget*>*) src/dom/events/EventDispatcher.cpp:1088:9
    #22 0x7f20040f60c1 in nsDocumentViewer::LoadComplete(nsresult) src/layout/base/nsDocumentViewer.cpp:1169:7
    #23 0x7f200727265f in nsDocShell::EndPageLoad(nsIWebProgress*, nsIChannel*, nsresult) src/docshell/base/nsDocShell.cpp:7072:21
    #24 0x7f200726ea44 in nsDocShell::OnStateChange(nsIWebProgress*, nsIRequest*, unsigned int, nsresult) src/docshell/base/nsDocShell.cpp:6865:7
    #25 0x7f200727622f in non-virtual thunk to nsDocShell::OnStateChange(nsIWebProgress*, nsIRequest*, unsigned int, nsresult) src/docshell/base/nsDocShell.cpp
    #26 0x7f1ffddfe7b7 in nsDocLoader::DoFireOnStateChange(nsIWebProgress*, nsIRequest*, int&, nsresult) src/uriloader/base/nsDocLoader.cpp:1309:3
    #27 0x7f1ffddfd857 in nsDocLoader::doStopDocumentLoad(nsIRequest*, nsresult) src/uriloader/base/nsDocLoader.cpp:852:14
    #28 0x7f1ffddfa458 in nsDocLoader::DocLoaderIsEmpty(bool) src/uriloader/base/nsDocLoader.cpp:741:9
    #29 0x7f1ffddfc42a in nsDocLoader::OnStopRequest(nsIRequest*, nsISupports*, nsresult) src/uriloader/base/nsDocLoader.cpp:627:5
    #30 0x7f1ffddfd42c in non-virtual thunk to nsDocLoader::OnStopRequest(nsIRequest*, nsISupports*, nsresult) src/uriloader/base/nsDocLoader.cpp
    #31 0x7f1ffc2601b5 in mozilla::net::nsLoadGroup::RemoveRequest(nsIRequest*, nsISupports*, nsresult) src/netwerk/base/nsLoadGroup.cpp:629:28
    #32 0x7f1fff1d63aa in DoUnblockOnload src/dom/base/nsDocument.cpp:8254:18
    #33 0x7f1fff1d63aa in nsDocument::UnblockOnload(bool) src/dom/base/nsDocument.cpp:8176
    #34 0x7f1fff1b6bb5 in nsIDocument::DispatchContentLoadedEvents() src/dom/base/nsDocument.cpp:5069:3
    #35 0x7f1fff28b4d4 in applyImpl<nsIDocument, void (nsIDocument::*)()> src/obj-firefox/dist/include/nsThreadUtils.h:1166:12
    #36 0x7f1fff28b4d4 in apply<nsIDocument, void (nsIDocument::*)()> src/obj-firefox/dist/include/nsThreadUtils.h:1172
    #37 0x7f1fff28b4d4 in mozilla::detail::RunnableMethodImpl<nsIDocument*, void (nsIDocument::*)(), true, (mozilla::RunnableKind)0>::Run() src/obj-firefox/dist/include/nsThreadUtils.h:1217
    #38 0x7f1ffc057c4e in mozilla::SchedulerGroup::Runnable::Run() src/xpcom/threads/SchedulerGroup.cpp:337:32
    #39 0x7f1ffc083d59 in nsThread::ProcessNextEvent(bool, bool*) src/xpcom/threads/nsThread.cpp:1051:14
    #40 0x7f1ffc08ab38 in NS_ProcessNextEvent(nsIThread*, bool) src/xpcom/threads/nsThreadUtils.cpp:519:10
    #41 0x7f1ffcf7c1ca in mozilla::ipc::MessagePump::Run(base::MessagePump::Delegate*) src/ipc/glue/MessagePump.cpp:97:21
    #42 0x7f1ffced0e2c in RunInternal src/ipc/chromium/src/base/message_loop.cc:325:10
    #43 0x7f1ffced0e2c in RunHandler src/ipc/chromium/src/base/message_loop.cc:318
    #44 0x7f1ffced0e2c in MessageLoop::Run() src/ipc/chromium/src/base/message_loop.cc:298
    #45 0x7f2003a51b9a in nsBaseAppShell::Run() src/widget/nsBaseAppShell.cpp:158:27
    #46 0x7f2007cfe00f in XRE_RunAppShell() src/toolkit/xre/nsEmbedFunctions.cpp:920:22
    #47 0x7f1ffced0e2c in RunInternal src/ipc/chromium/src/base/message_loop.cc:325:10
    #48 0x7f1ffced0e2c in RunHandler src/ipc/chromium/src/base/message_loop.cc:318
    #49 0x7f1ffced0e2c in MessageLoop::Run() src/ipc/chromium/src/base/message_loop.cc:298
    #50 0x7f2007cfd9c6 in XRE_InitChildProcess(int, char**, XREChildData const*) src/toolkit/xre/nsEmbedFunctions.cpp:746:34
    #51 0x4f1cb4 in content_process_main src/browser/app/../../ipc/contentproc/plugin-container.cpp:50:30
    #52 0x4f1cb4 in main src/browser/app/nsBrowserApp.cpp:287
    #53 0x7f201b96582f in __libc_start_main /build/glibc-Cl5G7W/glibc-2.23/csu/../csu/libc-start.c:291
    #54 0x4210e8 in _start (firefox+0x4210e8)
Flags: in-testsuite?
Reduced with m-c:
BuildID=20180703085610
SourceStamp=a0e47ebc4c06e652b919dabee711fdbd6bfd31b5
This testcase also triggers:
Assertion failure: aNode.IsInNativeAnonymousSubtree(), at src/toolkit/components/find/nsFind.cpp:260
Priority: -- → P3
You need to log in before you can comment on or make changes to this bug.