Closed Bug 1614341 Opened 5 years ago Closed 5 years ago

AddressSanitizer: SEGV /builds/worker/workspace/build/src/docshell/base/BrowsingContext.cpp:988:5 in mozilla::dom::BrowsingContext::LoadURI(mozilla::dom::BrowsingContext*, nsDocShellLoadState*, bool)

Categories

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

defect

Tracking

()

RESOLVED DUPLICATE of bug 1614259
Fission Milestone M5a
Tracking Status
firefox75 --- wontfix

People

(Reporter: jkratzer, Unassigned)

References

(Blocks 2 open bugs)

Details

(Keywords: crash, testcase)

Attachments

(2 files)

Attached file testcase.html

Testcase found while fuzzing mozilla-central rev d3aa4a9e4dfd. Testcase must be served via a local webserver in order to reproduce.

==30211==ERROR: AddressSanitizer: SEGV on unknown address 0x000000000001 (pc 0x7f4fe46e24d4 bp 0x7fffee305610 sp 0x7fffee305500 T0)
==30211==The signal is caused by a WRITE memory access.
==30211==Hint: address points to the zero page.
    #0 0x7f4fe46e24d3 in mozilla::dom::BrowsingContext::LoadURI(mozilla::dom::BrowsingContext*, nsDocShellLoadState*, bool) /builds/worker/workspace/build/src/docshell/base/BrowsingContext.cpp:988:5
    #1 0x7f4fdd4784c6 in mozilla::dom::LocationBase::SetURI(nsIURI*, nsIPrincipal&, mozilla::ErrorResult&, bool) /builds/worker/workspace/build/src/dom/base/LocationBase.cpp:153:23
    #2 0x7f4fdd480438 in mozilla::dom::LocationBase::SetHrefWithBase(nsTSubstring<char16_t> const&, nsIURI*, nsIPrincipal&, bool, mozilla::ErrorResult&) /builds/worker/workspace/build/src/dom/base/LocationBase.cpp:215:5
    #3 0x7f4fdd47e2d4 in mozilla::dom::LocationBase::DoSetHref(nsTSubstring<char16_t> const&, nsIPrincipal&, bool, mozilla::ErrorResult&) /builds/worker/workspace/build/src/dom/base/LocationBase.cpp:170:3
    #4 0x7f4fdda92407 in mozilla::dom::Location_Binding::replace(JSContext*, JS::Handle<JSObject*>, void*, JSJitMethodCallArgs const&) /builds/worker/workspace/build/src/obj-firefox/dom/bindings/LocationBinding.cpp:1085:24
    #5 0x7f4fdef78799 in bool mozilla::dom::binding_detail::GenericMethod<mozilla::dom::binding_detail::CrossOriginThisPolicy, mozilla::dom::binding_detail::ThrowExceptions>(JSContext*, unsigned int, JS::Value*) /builds/worker/workspace/build/src/dom/bindings/BindingUtils.cpp:3170:13
    #6 0x7f4fe53f2dd3 in CallJSNative /builds/worker/workspace/build/src/js/src/vm/Interpreter.cpp:470:13
    #7 0x7f4fe53f2dd3 in js::InternalCallOrConstruct(JSContext*, JS::CallArgs const&, js::MaybeConstruct, js::CallReason) /builds/worker/workspace/build/src/js/src/vm/Interpreter.cpp:562:12
    #8 0x7f4fe53f4bca in InternalCall(JSContext*, js::AnyInvokeArgs const&, js::CallReason) /builds/worker/workspace/build/src/js/src/vm/Interpreter.cpp:625:10
    #9 0x7f4fe53d96eb in CallFromStack /builds/worker/workspace/build/src/js/src/vm/Interpreter.cpp:629:10
    #10 0x7f4fe53d96eb in Interpret(JSContext*, js::RunState&) /builds/worker/workspace/build/src/js/src/vm/Interpreter.cpp:3042:16
    #11 0x7f4fe53bcd44 in js::RunScript(JSContext*, js::RunState&) /builds/worker/workspace/build/src/js/src/vm/Interpreter.cpp:442:10
    #12 0x7f4fe53f2eb5 in js::InternalCallOrConstruct(JSContext*, JS::CallArgs const&, js::MaybeConstruct, js::CallReason) /builds/worker/workspace/build/src/js/src/vm/Interpreter.cpp:597:13
    #13 0x7f4fe53f4bca in InternalCall(JSContext*, js::AnyInvokeArgs const&, js::CallReason) /builds/worker/workspace/build/src/js/src/vm/Interpreter.cpp:625:10
    #14 0x7f4fe53f4ea6 in js::Call(JSContext*, JS::Handle<JS::Value>, JS::Handle<JS::Value>, js::AnyInvokeArgs const&, JS::MutableHandle<JS::Value>, js::CallReason) /builds/worker/workspace/build/src/js/src/vm/Interpreter.cpp:642:8
    #15 0x7f4fe558aca2 in JS::Call(JSContext*, JS::Handle<JS::Value>, JS::Handle<JS::Value>, JS::HandleValueArray const&, JS::MutableHandle<JS::Value>) /builds/worker/workspace/build/src/js/src/jsapi.cpp:2797:10
    #16 0x7f4fdeb8e800 in mozilla::dom::EventListener::HandleEvent(JSContext*, JS::Handle<JS::Value>, mozilla::dom::Event&, mozilla::ErrorResult&) /builds/worker/workspace/build/src/obj-firefox/dom/bindings/EventListenerBinding.cpp:52:8
    #17 0x7f4fdf638b0b in void mozilla::dom::EventListener::HandleEvent<mozilla::dom::EventTarget*>(mozilla::dom::EventTarget* const&, mozilla::dom::Event&, mozilla::ErrorResult&, char const*, mozilla::dom::CallbackObject::ExceptionHandling, JS::Realm*) /builds/worker/workspace/build/src/obj-firefox/dist/include/mozilla/dom/EventListenerBinding.h:66:12
    #18 0x7f4fdf638544 in mozilla::EventListenerManager::HandleEventSubType(mozilla::EventListenerManager::Listener*, mozilla::dom::Event*, mozilla::dom::EventTarget*) /builds/worker/workspace/build/src/dom/events/EventListenerManager.cpp:1073:43
    #19 0x7f4fdf639ba6 in mozilla::EventListenerManager::HandleEventInternal(nsPresContext*, mozilla::WidgetEvent*, mozilla::dom::Event**, mozilla::dom::EventTarget*, nsEventStatus*, bool) /builds/worker/workspace/build/src/dom/events/EventListenerManager.cpp:1271:17
    #20 0x7f4fdf62788f in mozilla::EventTargetChainItem::HandleEvent(mozilla::EventChainPostVisitor&, mozilla::ELMCreationDetector&) /builds/worker/workspace/build/src/dom/events/EventDispatcher.cpp:356:17
    #21 0x7f4fdf625de1 in mozilla::EventTargetChainItem::HandleEventTargetChain(nsTArray<mozilla::EventTargetChainItem>&, mozilla::EventChainPostVisitor&, mozilla::EventDispatchingCallback*, mozilla::ELMCreationDetector&) /builds/worker/workspace/build/src/dom/events/EventDispatcher.cpp:558:16
    #22 0x7f4fdf62a89b in mozilla::EventDispatcher::Dispatch(nsISupports*, nsPresContext*, mozilla::WidgetEvent*, mozilla::dom::Event*, nsEventStatus*, mozilla::EventDispatchingCallback*, nsTArray<mozilla::dom::EventTarget*>*) /builds/worker/workspace/build/src/dom/events/EventDispatcher.cpp:1055:11
    #23 0x7f4fdf62f809 in mozilla::EventDispatcher::DispatchDOMEvent(nsISupports*, mozilla::WidgetEvent*, mozilla::dom::Event*, nsPresContext*, nsEventStatus*) /builds/worker/workspace/build/src/dom/events/EventDispatcher.cpp
    #24 0x7f4fdd65071e in nsINode::DispatchEvent(mozilla::dom::Event&, mozilla::dom::CallerType, mozilla::ErrorResult&) /builds/worker/workspace/build/src/dom/base/nsINode.cpp:1259:17
    #25 0x7f4fdd0b8237 in nsContentUtils::DispatchEvent(mozilla::dom::Document*, nsISupports*, nsTSubstring<char16_t> const&, mozilla::CanBubble, mozilla::Cancelable, mozilla::Composed, mozilla::Trusted, bool*, mozilla::ChromeOnlyDispatch) /builds/worker/workspace/build/src/dom/base/nsContentUtils.cpp:4077:28
    #26 0x7f4fdd0b7f73 in nsContentUtils::DispatchTrustedEvent(mozilla::dom::Document*, nsISupports*, nsTSubstring<char16_t> const&, mozilla::CanBubble, mozilla::Cancelable, mozilla::Composed, bool*) /builds/worker/workspace/build/src/dom/base/nsContentUtils.cpp:4047:10
    #27 0x7f4fdd37aa15 in mozilla::dom::Document::DispatchContentLoadedEvents() /builds/worker/workspace/build/src/dom/base/Document.cpp:7204:3
    #28 0x7f4fdd4467c4 in applyImpl<mozilla::dom::Document, void (mozilla::dom::Document::*)()> /builds/worker/workspace/build/src/obj-firefox/dist/include/nsThreadUtils.h:1163:12
    #29 0x7f4fdd4467c4 in apply<mozilla::dom::Document, void (mozilla::dom::Document::*)()> /builds/worker/workspace/build/src/obj-firefox/dist/include/nsThreadUtils.h:1169:12
    #30 0x7f4fdd4467c4 in mozilla::detail::RunnableMethodImpl<mozilla::dom::Document*, void (mozilla::dom::Document::*)(), true, (mozilla::RunnableKind)0>::Run() /builds/worker/workspace/build/src/obj-firefox/dist/include/nsThreadUtils.h:1215:13
    #31 0x7f4fd941ebd3 in mozilla::SchedulerGroup::Runnable::Run() /builds/worker/workspace/build/src/xpcom/threads/SchedulerGroup.cpp:282:20
    #32 0x7f4fd9453358 in nsThread::ProcessNextEvent(bool, bool*) /builds/worker/workspace/build/src/xpcom/threads/nsThread.cpp:1220:14
    #33 0x7f4fd945e16c in NS_ProcessNextEvent(nsIThread*, bool) /builds/worker/workspace/build/src/xpcom/threads/nsThreadUtils.cpp:486:10
    #34 0x7f4fda6aff6f in mozilla::ipc::MessagePump::Run(base::MessagePump::Delegate*) /builds/worker/workspace/build/src/ipc/glue/MessagePump.cpp:87:21
    #35 0x7f4fda5a96d7 in RunInternal /builds/worker/workspace/build/src/ipc/chromium/src/base/message_loop.cc:315:10
    #36 0x7f4fda5a96d7 in RunHandler /builds/worker/workspace/build/src/ipc/chromium/src/base/message_loop.cc:308:3
    #37 0x7f4fda5a96d7 in MessageLoop::Run() /builds/worker/workspace/build/src/ipc/chromium/src/base/message_loop.cc:290:3
    #38 0x7f4fe167ea08 in nsBaseAppShell::Run() /builds/worker/workspace/build/src/widget/nsBaseAppShell.cpp:137:27
    #39 0x7f4fe518cfd6 in XRE_RunAppShell() /builds/worker/workspace/build/src/toolkit/xre/nsEmbedFunctions.cpp:943:20
    #40 0x7f4fda5a96d7 in RunInternal /builds/worker/workspace/build/src/ipc/chromium/src/base/message_loop.cc:315:10
    #41 0x7f4fda5a96d7 in RunHandler /builds/worker/workspace/build/src/ipc/chromium/src/base/message_loop.cc:308:3
    #42 0x7f4fda5a96d7 in MessageLoop::Run() /builds/worker/workspace/build/src/ipc/chromium/src/base/message_loop.cc:290:3
    #43 0x7f4fe518c67f in XRE_InitChildProcess(int, char**, XREChildData const*) /builds/worker/workspace/build/src/toolkit/xre/nsEmbedFunctions.cpp:778:34
    #44 0x556e64ce5403 in content_process_main /builds/worker/workspace/build/src/browser/app/../../ipc/contentproc/plugin-container.cpp:56:28
    #45 0x556e64ce5403 in main /builds/worker/workspace/build/src/browser/app/nsBrowserApp.cpp:303:18
    #46 0x7f4ffbf2db96 in __libc_start_main /build/glibc-OTsEL5/glibc-2.27/csu/../csu/libc-start.c:310

AddressSanitizer can not provide additional info.
SUMMARY: AddressSanitizer: SEGV /builds/worker/workspace/build/src/docshell/base/BrowsingContext.cpp:988:5 in mozilla::dom::BrowsingContext::LoadURI(mozilla::dom::BrowsingContext*, nsDocShellLoadState*, bool)
Flags: in-testsuite?
Attached file prefs.js
Component: DOM: Core & HTML → DOM: Navigation

The priority flag is not set for this bug.
:kmag, could you have a look please?

For more information, please visit auto_nag documentation.

Flags: needinfo?(kmaglione+bmo)

Bugbug thinks this bug is a regression, but please revert this change in case of error.

Keywords: regression

assigning to kmag because he added these assertions.

M5 for reproducible crash

Assignee: nobody → kmaglione+bmo
Fission Milestone: --- → M5
Flags: needinfo?(kmaglione+bmo)
Keywords: regression
Priority: -- → P1

kmag will review this crash next week and decide whether it should block M5 or M6.

Moving P1 M5 bugs to M5a milestone

Fission Milestone: M5 → M5a

:kmag claims that this bug should be fixed by the fix from bug 1614259. Does this bug still reproduce now that that fix has landed?

Flags: needinfo?(jkratzer)
Assignee: kmaglione+bmo → nobody

I can no longer reproduce this bug using mozilla-central rev 3e5a7430c8d7. Bisection appears to show that this bug was fixed by bug 1614259.

Flags: needinfo?(jkratzer)
Status: NEW → RESOLVED
Closed: 5 years ago
Resolution: --- → DUPLICATE
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: