Assertion failure: aTextNode.Length() >= aStartOffset + aLength, at /builds/worker/checkouts/gecko/editor/libeditor/ReplaceTextTransaction.h:53
Categories
(Core :: DOM: Editor, defect, P5)
Tracking
()
People
(Reporter: jkratzer, Unassigned)
References
(Blocks 1 open bug, Regression)
Details
(Keywords: assertion, regression, testcase, Whiteboard: [bugmon:bisected,confirmed])
Attachments
(1 file)
(deleted),
text/html
|
Details |
Testcase found while fuzzing mozilla-central rev 10ad7868f3ca (built with --enable-debug).
Assertion failure: aTextNode.Length() >= aStartOffset + aLength, at /builds/worker/checkouts/gecko/editor/libeditor/ReplaceTextTransaction.h:53
rax = 0x00007fbc31797136 rdx = 0x0000000000000000
rcx = 0x0000557c3fca8a58 rbx = 0x0000557c40cf71e0
rsi = 0x00007fbc428ac8b0 rdi = 0x00007fbc428ab680
rbp = 0x00007ffc89fbb3a0 rsp = 0x00007ffc89fbb360
r8 = 0x00007fbc428ac8b0 r9 = 0x00007fbc43a12780
r10 = 0x0000000000000002 r11 = 0x0000000000000000
r12 = 0x0000000000000000 r13 = 0x00007ffc89fbb550
r14 = 0x00007ffc89fbb4b0 r15 = 0x0000000000000003
rip = 0x00007fbc2bf1c4cf
OS|Linux|0.0.0 Linux 5.3.0-51-generic #44~18.04.2-Ubuntu SMP Thu Apr 23 14:27:18 UTC 2020 x86_64
CPU|amd64|family 6 model 94 stepping 3|8
GPU|||
Crash|SIGSEGV|0x0|0
0|0|libxul.so|mozilla::ReplaceTextTransaction::Create(mozilla::EditorBase&, nsTSubstring<char16_t> const&, mozilla::dom::Text&, unsigned int, unsigned int)|hg:hg.mozilla.org/mozilla-central:editor/libeditor/ReplaceTextTransaction.h:10ad7868f3ca27cb90db9bd1d392ff4d7852a0cd|53|0x29
0|1|libxul.so|mozilla::HTMLEditor::ReplaceTextWithTransaction(mozilla::dom::Text&, unsigned int, unsigned int, nsTSubstring<char16_t> const&)|hg:hg.mozilla.org/mozilla-central:editor/libeditor/HTMLEditor.cpp:10ad7868f3ca27cb90db9bd1d392ff4d7852a0cd|3334|0x1f
0|2|libxul.so|mozilla::WSRunObject::ReplaceASCIIWhitespacesWithOneNBSP(mozilla::EditorDOMPointBase<RefPtr<mozilla::dom::Text>, nsIContent*> const&)|hg:hg.mozilla.org/mozilla-central:editor/libeditor/WSRunObject.cpp:10ad7868f3ca27cb90db9bd1d392ff4d7852a0cd|1457|0x11
0|3|libxul.so|mozilla::WSRunObject::InsertBreak(mozilla::dom::Selection&, mozilla::EditorDOMPointBase<nsCOMPtr<nsINode>, nsCOMPtr<nsIContent> > const&, short)|hg:hg.mozilla.org/mozilla-central:editor/libeditor/WSRunObject.cpp:10ad7868f3ca27cb90db9bd1d392ff4d7852a0cd|240|0x8
0|4|libxul.so|mozilla::HTMLEditor::InsertBRElement(mozilla::EditorDOMPointBase<nsCOMPtr<nsINode>, nsCOMPtr<nsIContent> > const&)|hg:hg.mozilla.org/mozilla-central:editor/libeditor/HTMLEditSubActionHandler.cpp:10ad7868f3ca27cb90db9bd1d392ff4d7852a0cd|2089|0x33
0|5|libxul.so|mozilla::HTMLEditor::InsertParagraphSeparatorAsSubAction()|hg:hg.mozilla.org/mozilla-central:editor/libeditor/HTMLEditSubActionHandler.cpp:10ad7868f3ca27cb90db9bd1d392ff4d7852a0cd|1937|0x8
0|6|libxul.so|mozilla::HTMLEditor::InsertParagraphSeparatorAsAction(nsIPrincipal*)|hg:hg.mozilla.org/mozilla-central:editor/libeditor/HTMLEditor.cpp:10ad7868f3ca27cb90db9bd1d392ff4d7852a0cd|987|0x8
0|7|libxul.so|mozilla::InsertParagraphCommand::DoCommand(mozilla::Command, mozilla::TextEditor&, nsIPrincipal*) const|hg:hg.mozilla.org/mozilla-central:editor/libeditor/EditorCommands.cpp:10ad7868f3ca27cb90db9bd1d392ff4d7852a0cd|887|0xb
0|8|libxul.so|mozilla::dom::Document::ExecCommand(nsTSubstring<char16_t> const&, bool, nsTSubstring<char16_t> const&, nsIPrincipal&, mozilla::ErrorResult&)|hg:hg.mozilla.org/mozilla-central:dom/base/Document.cpp:10ad7868f3ca27cb90db9bd1d392ff4d7852a0cd|4858|0x33
0|9|libxul.so|mozilla::dom::Document_Binding::execCommand(JSContext*, JS::Handle<JSObject*>, void*, JSJitMethodCallArgs const&)|s3:gecko-generated-sources:8f7281e3ba1d600673dcaa1ac04d192ebae5bd1389403ef4cb1737261df8d246aba5da557aa502b708e3a3d18afebea6aedb14885532cb2904ce3fbf2ec40b9f/dom/bindings/DocumentBinding.cpp:|3469|0x34
0|10|libxul.so|bool mozilla::dom::binding_detail::GenericMethod<mozilla::dom::binding_detail::NormalThisPolicy, mozilla::dom::binding_detail::ThrowExceptions>(JSContext*, unsigned int, JS::Value*)|hg:hg.mozilla.org/mozilla-central:dom/bindings/BindingUtils.cpp:10ad7868f3ca27cb90db9bd1d392ff4d7852a0cd|3219|0x21
0|11|libxul.so|CallJSNative(JSContext*, bool (*)(JSContext*, unsigned int, JS::Value*), js::CallReason, JS::CallArgs const&)|hg:hg.mozilla.org/mozilla-central:js/src/vm/Interpreter.cpp:10ad7868f3ca27cb90db9bd1d392ff4d7852a0cd|486|0x12
0|12|libxul.so|js::InternalCallOrConstruct(JSContext*, JS::CallArgs const&, js::MaybeConstruct, js::CallReason)|hg:hg.mozilla.org/mozilla-central:js/src/vm/Interpreter.cpp:10ad7868f3ca27cb90db9bd1d392ff4d7852a0cd|578|0xe
0|13|libxul.so|InternalCall(JSContext*, js::AnyInvokeArgs const&, js::CallReason)|hg:hg.mozilla.org/mozilla-central:js/src/vm/Interpreter.cpp:10ad7868f3ca27cb90db9bd1d392ff4d7852a0cd|641|0x10
0|14|libxul.so|Interpret(JSContext*, js::RunState&)|hg:hg.mozilla.org/mozilla-central:js/src/vm/Interpreter.cpp:10ad7868f3ca27cb90db9bd1d392ff4d7852a0cd|645|0xa
0|15|libxul.so|js::RunScript(JSContext*, js::RunState&)|hg:hg.mozilla.org/mozilla-central:js/src/vm/Interpreter.cpp:10ad7868f3ca27cb90db9bd1d392ff4d7852a0cd|458|0xb
0|16|libxul.so|js::InternalCallOrConstruct(JSContext*, JS::CallArgs const&, js::MaybeConstruct, js::CallReason)|hg:hg.mozilla.org/mozilla-central:js/src/vm/Interpreter.cpp:10ad7868f3ca27cb90db9bd1d392ff4d7852a0cd|613|0x8
0|17|libxul.so|InternalCall(JSContext*, js::AnyInvokeArgs const&, js::CallReason)|hg:hg.mozilla.org/mozilla-central:js/src/vm/Interpreter.cpp:10ad7868f3ca27cb90db9bd1d392ff4d7852a0cd|641|0x10
0|18|libxul.so|<name omitted>|hg:hg.mozilla.org/mozilla-central:js/src/vm/Interpreter.cpp:10ad7868f3ca27cb90db9bd1d392ff4d7852a0cd|658|0xb
0|19|libxul.so|JS::Call(JSContext*, JS::Handle<JS::Value>, JS::Handle<JS::Value>, JS::HandleValueArray const&, JS::MutableHandle<JS::Value>)|hg:hg.mozilla.org/mozilla-central:js/src/jsapi.cpp:10ad7868f3ca27cb90db9bd1d392ff4d7852a0cd|2842|0x23
0|20|libxul.so|mozilla::dom::EventListener::HandleEvent(mozilla::dom::BindingCallContext&, JS::Handle<JS::Value>, mozilla::dom::Event&, mozilla::ErrorResult&)|s3:gecko-generated-sources:2563ad09677feb8ddf64827a409899848ef6a80bfacaa11f581c512536a6fb0c779d8b29517ba6358a054c6d475f770bf7bac2913a941d0394881c5649b08603/dom/bindings/EventListenerBinding.cpp:|55|0xe
0|21|libxul.so|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*)|s3:gecko-generated-sources:99837b3cdc69c5eb1234f9d2b3e771dcff734d56a022bedb1d00c0cf4ee6243fb5c91397a058f2ddab63bda8ed6b581ea1232a0229033866910c7289d24cbc2d/dist/include/mozilla/dom/EventListenerBinding.h:|66|0x21
0|22|libxul.so|mozilla::EventListenerManager::HandleEventSubType(mozilla::EventListenerManager::Listener*, mozilla::dom::Event*, mozilla::dom::EventTarget*)|hg:hg.mozilla.org/mozilla-central:dom/events/EventListenerManager.cpp:10ad7868f3ca27cb90db9bd1d392ff4d7852a0cd|1082|0x2c
0|23|libxul.so|mozilla::EventListenerManager::HandleEventInternal(nsPresContext*, mozilla::WidgetEvent*, mozilla::dom::Event**, mozilla::dom::EventTarget*, nsEventStatus*, bool)|hg:hg.mozilla.org/mozilla-central:dom/events/EventListenerManager.cpp:10ad7868f3ca27cb90db9bd1d392ff4d7852a0cd|1280|0x16
0|24|libxul.so|mozilla::EventTargetChainItem::HandleEvent(mozilla::EventChainPostVisitor&, mozilla::ELMCreationDetector&)|hg:hg.mozilla.org/mozilla-central:dom/events/EventDispatcher.cpp:10ad7868f3ca27cb90db9bd1d392ff4d7852a0cd|355|0xb
0|25|libxul.so|mozilla::EventTargetChainItem::HandleEventTargetChain(nsTArray<mozilla::EventTargetChainItem>&, mozilla::EventChainPostVisitor&, mozilla::EventDispatchingCallback*, mozilla::ELMCreationDetector&)|hg:hg.mozilla.org/mozilla-central:dom/events/EventDispatcher.cpp:10ad7868f3ca27cb90db9bd1d392ff4d7852a0cd|557|0x19
0|26|libxul.so|mozilla::EventDispatcher::Dispatch(nsISupports*, nsPresContext*, mozilla::WidgetEvent*, mozilla::dom::Event*, nsEventStatus*, mozilla::EventDispatchingCallback*, nsTArray<mozilla::dom::EventTarget*>*)|hg:hg.mozilla.org/mozilla-central:dom/events/EventDispatcher.cpp:10ad7868f3ca27cb90db9bd1d392ff4d7852a0cd|1054|0x5
0|27|libxul.so|mozilla::EventDispatcher::DispatchDOMEvent(nsISupports*, mozilla::WidgetEvent*, mozilla::dom::Event*, nsPresContext*, nsEventStatus*)|hg:hg.mozilla.org/mozilla-central:dom/events/EventDispatcher.cpp:10ad7868f3ca27cb90db9bd1d392ff4d7852a0cd|0|0x8
0|28|libxul.so|nsINode::DispatchEvent(mozilla::dom::Event&, mozilla::dom::CallerType, mozilla::ErrorResult&)|hg:hg.mozilla.org/mozilla-central:dom/base/nsINode.cpp:10ad7868f3ca27cb90db9bd1d392ff4d7852a0cd|1302|0x10
0|29|libxul.so|nsContentUtils::DispatchEvent(mozilla::dom::Document*, nsISupports*, nsTSubstring<char16_t> const&, mozilla::CanBubble, mozilla::Cancelable, mozilla::Composed, mozilla::Trusted, bool*, mozilla::ChromeOnlyDispatch)|hg:hg.mozilla.org/mozilla-central:dom/base/nsContentUtils.cpp:10ad7868f3ca27cb90db9bd1d392ff4d7852a0cd|4027|0x23
0|30|libxul.so|nsContentUtils::DispatchTrustedEvent(mozilla::dom::Document*, nsISupports*, nsTSubstring<char16_t> const&, mozilla::CanBubble, mozilla::Cancelable, mozilla::Composed, bool*)|hg:hg.mozilla.org/mozilla-central:dom/base/nsContentUtils.cpp:10ad7868f3ca27cb90db9bd1d392ff4d7852a0cd|3997|0x23
0|31|libxul.so|mozilla::dom::Document::DispatchContentLoadedEvents()|hg:hg.mozilla.org/mozilla-central:dom/base/Document.cpp:10ad7868f3ca27cb90db9bd1d392ff4d7852a0cd|7175|0x21
0|32|libxul.so|mozilla::detail::RunnableMethodImpl<mozilla::dom::Document*, void (mozilla::dom::Document::*)(), true, (mozilla::RunnableKind)0>::Run()|hg:hg.mozilla.org/mozilla-central:xpcom/threads/nsThreadUtils.h:10ad7868f3ca27cb90db9bd1d392ff4d7852a0cd|1237|0x17
0|33|libxul.so|mozilla::SchedulerGroup::Runnable::Run()|hg:hg.mozilla.org/mozilla-central:xpcom/threads/SchedulerGroup.cpp:10ad7868f3ca27cb90db9bd1d392ff4d7852a0cd|146|0x11
0|34|libxul.so|nsThread::ProcessNextEvent(bool, bool*)|hg:hg.mozilla.org/mozilla-central:xpcom/threads/nsThread.cpp:10ad7868f3ca27cb90db9bd1d392ff4d7852a0cd|1236|0xe
0|35|libxul.so|NS_ProcessNextEvent(nsIThread*, bool)|hg:hg.mozilla.org/mozilla-central:xpcom/threads/nsThreadUtils.cpp:10ad7868f3ca27cb90db9bd1d392ff4d7852a0cd|501|0xc
0|36|libxul.so|mozilla::ipc::MessagePump::Run(base::MessagePump::Delegate*)|hg:hg.mozilla.org/mozilla-central:ipc/glue/MessagePump.cpp:10ad7868f3ca27cb90db9bd1d392ff4d7852a0cd|87|0x7
0|37|libxul.so|MessageLoop::RunInternal()|hg:hg.mozilla.org/mozilla-central:ipc/chromium/src/base/message_loop.cc:10ad7868f3ca27cb90db9bd1d392ff4d7852a0cd|315|0x17
0|38|libxul.so|MessageLoop::Run()|hg:hg.mozilla.org/mozilla-central:ipc/chromium/src/base/message_loop.cc:10ad7868f3ca27cb90db9bd1d392ff4d7852a0cd|290|0x8
0|39|libxul.so|nsBaseAppShell::Run()|hg:hg.mozilla.org/mozilla-central:widget/nsBaseAppShell.cpp:10ad7868f3ca27cb90db9bd1d392ff4d7852a0cd|137|0xd
0|40|libxul.so|XRE_RunAppShell()|hg:hg.mozilla.org/mozilla-central:toolkit/xre/nsEmbedFunctions.cpp:10ad7868f3ca27cb90db9bd1d392ff4d7852a0cd|913|0xe
0|41|libxul.so|mozilla::ipc::MessagePumpForChildProcess::Run(base::MessagePump::Delegate*)|hg:hg.mozilla.org/mozilla-central:ipc/glue/MessagePump.cpp:10ad7868f3ca27cb90db9bd1d392ff4d7852a0cd|237|0x5
0|42|libxul.so|MessageLoop::RunInternal()|hg:hg.mozilla.org/mozilla-central:ipc/chromium/src/base/message_loop.cc:10ad7868f3ca27cb90db9bd1d392ff4d7852a0cd|315|0x17
0|43|libxul.so|MessageLoop::Run()|hg:hg.mozilla.org/mozilla-central:ipc/chromium/src/base/message_loop.cc:10ad7868f3ca27cb90db9bd1d392ff4d7852a0cd|290|0x8
0|44|libxul.so|XRE_InitChildProcess(int, char**, XREChildData const*)|hg:hg.mozilla.org/mozilla-central:toolkit/xre/nsEmbedFunctions.cpp:10ad7868f3ca27cb90db9bd1d392ff4d7852a0cd|744|0x5
0|45|firefox-bin|content_process_main(mozilla::Bootstrap*, int, char**)|hg:hg.mozilla.org/mozilla-central:ipc/contentproc/plugin-container.cpp:10ad7868f3ca27cb90db9bd1d392ff4d7852a0cd|56|0x11
0|46|firefox-bin|main|hg:hg.mozilla.org/mozilla-central:browser/app/nsBrowserApp.cpp:10ad7868f3ca27cb90db9bd1d392ff4d7852a0cd|303|0x20
0|47|libc.so.6||||0x21b97
0|48|firefox-bin|<name omitted>|hg:hg.mozilla.org/mozilla-central:mfbt/UniquePtr.h:10ad7868f3ca27cb90db9bd1d392ff4d7852a0cd|253|0x17
Reporter | ||
Updated•4 years ago
|
Reporter | ||
Comment 1•4 years ago
|
||
Comment 2•3 years ago
|
||
Bugmon Analysis
Unable to reproduce bug 1645120 using build mozilla-central 20201205093858-7ce95b6cde26. Without a baseline, bugmon is unable to analyze this bug.
Removing bugmon keyword as no further action possible. Please review the bug and re-add the keyword for further analysis.
Comment 3•2 years ago
|
||
Setting regressed_by field after analyzing regression range found by bugmon.
Updated•2 years ago
|
Comment 4•2 years ago
|
||
Set release status flags based on info from the regressing bug 1639161
Comment 5•2 years ago
|
||
:masayuki, since you are the author of the regressor, bug 1639161, could you take a look?
For more information, please visit auto_nag documentation.
Comment 6•2 years ago
|
||
It looks like that it detects a traditional bug with the new assertion, and CharacterData::SetTextInternal
handles the error, so this is not urgent one.
Updated•2 years ago
|
Comment 7•2 years ago
|
||
Set release status flags based on info from the regressing bug 1639161
Updated•2 years ago
|
Updated•2 years ago
|
Description
•