Skip to content

Nondeterminism in drag and drop code when dragging link #427

@burg

Description

@burg

Test case:
LayoutTests/fast/events/content-changed-during-drop.html

Stack trace:

ReplayEvents         --->Dispatching DOM event: type=focus, target=0/node[0x7ffd308dd470] INPUT
ASSERTION FAILED: withinInputExtent()
/Users/burg/repos/timelapse/Source/WebCore/replay/CaptureInputIterator.cpp(85) : virtual void WebCore::CaptureInputIterator::incrementExecutionTicks()
1   0x116e5bc20 WTFCrash
2   0x119b0e2e5 WebCore::CaptureInputIterator::incrementExecutionTicks()
3   0x119b032a9 WebCore::ReplayController::willDispatchEvent(WebCore::Event const&, WebCore::Frame*, WebCore::PositionMark const&)
4   0x119b091d4 WebCore::InspectorReplayAgent::willDispatchEvent(WebCore::Event const&, WebCore::Frame*)
5   0x1189a8e94 WebCore::InspectorInstrumentation::willDispatchEventImpl(WebCore::InstrumentingAgents*, WebCore::Event const&, bool, WebCore::Document*)
6   0x118479815 WebCore::InspectorInstrumentation::willDispatchEvent(WebCore::Document*, WebCore::Event const&, bool)
7   0x1184790da WebCore::EventTarget::fireEventListeners(WebCore::Event*, WebCore::EventTargetData*, WTF::Vector<WebCore::RegisteredEventListener, 1ul, WTF::CrashOnOverflow>&)
8   0x118478b3e WebCore::EventTarget::fireEventListeners(WebCore::Event*)
9   0x11917509c WebCore::Node::handleLocalEvents(WebCore::Event&)
10  0x11844d511 WebCore::EventContext::handleLocalEvents(WebCore::Event&) const
11  0x11844d827 WebCore::MouseOrFocusEventContext::handleLocalEvents(WebCore::Event&) const
12  0x11844ea64 WebCore::dispatchEventInDOM(WebCore::Event&, WebCore::EventPath const&, WebCore::WindowEventContext&)
13  0x11844e5b0 WebCore::EventDispatcher::dispatchEvent(WebCore::Node*, WTF::PassRefPtr<WebCore::Event>)
14  0x11842f3ea WebCore::Element::dispatchFocusEvent(WTF::PassRefPtr<WebCore::Element>, WebCore::FocusDirection)
15  0x1187e423a WebCore::HTMLTextFormControlElement::dispatchFocusEvent(WTF::PassRefPtr<WebCore::Element>, WebCore::FocusDirection)
16  0x1182a10e9 WebCore::Document::setFocusedElement(WTF::PassRefPtr<WebCore::Element>, WebCore::FocusDirection)
17  0x1184ed0ae WebCore::FocusController::setFocusedElement(WebCore::Element*, WTF::PassRefPtr<WebCore::Frame>, WebCore::FocusDirection)
18  0x118581428 WebCore::FrameSelection::setFocusedElementIfNeeded()
19  0x11857ff7f WebCore::FrameSelection::setSelection(WebCore::VisibleSelection const&, unsigned int, WebCore::FrameSelection::CursorAlignOnScroll, WebCore::TextGranularity)
20  0x1183dcb2e WebCore::setSelectionToDragCaret(WebCore::Frame*, WebCore::VisibleSelection&, WTF::RefPtr<WebCore::Range>&, WebCore::IntPoint const&)
21  0x1183db148 WebCore::DragController::concludeEditDrag(WebCore::DragData&)
22  0x1183da398 WebCore::DragController::performDrag(WebCore::DragData&)
23  0x11523196e WebKit::WebPage::performDragControllerAction(unsigned long long, WebCore::IntPoint, WebCore::IntPoint, unsigned long long, WTF::String const&, unsigned int, WebKit::SandboxExtension::Handle const&, WebKit::SandboxExtension::HandleArray const&)
24  0x115289d31 void IPC::callMemberFunction<WebKit::WebPage, void (WebKit::WebPage::*)(unsigned long long, WebCore::IntPoint, WebCore::IntPoint, unsigned long long, WTF::String const&, unsigned int, WebKit::SandboxExtension::Handle const&, WebKit::SandboxExtension::HandleArray const&), unsigned long long, WebCore::IntPoint, WebCore::IntPoint, unsigned long long, WTF::String, unsigned int, WebKit::SandboxExtension::Handle, WebKit::SandboxExtension::HandleArray>(std::__1::tuple<unsigned long long, WebCore::IntPoint, WebCore::IntPoint, unsigned long long, WTF::String, unsigned int, WebKit::SandboxExtension::Handle, WebKit::SandboxExtension::HandleArray>&&, WebKit::WebPage*, void (WebKit::WebPage::*)(unsigned long long, WebCore::IntPoint, WebCore::IntPoint, unsigned long long, WTF::String const&, unsigned int, WebKit::SandboxExtension::Handle const&, WebKit::SandboxExtension::HandleArray const&))
25  0x11527f6f4 void IPC::handleMessage<Messages::WebPage::PerformDragControllerAction, WebKit::WebPage, void (WebKit::WebPage::*)(unsigned long long, WebCore::IntPoint, WebCore::IntPoint, unsigned long long, WTF::String const&, unsigned int, WebKit::SandboxExtension::Handle const&, WebKit::SandboxExtension::HandleArray const&)>(IPC::MessageDecoder&, WebKit::WebPage*, void (WebKit::WebPage::*)(unsigned long long, WebCore::IntPoint, WebCore::IntPoint, unsigned long long, WTF::String const&, unsigned int, WebKit::SandboxExtension::Handle const&, WebKit::SandboxExtension::HandleArray const&))
26  0x115277d9f WebKit::WebPage::didReceiveWebPageMessage(IPC::Connection*, IPC::MessageDecoder&)
27  0x1152333b9 WebKit::WebPage::didReceiveMessage(IPC::Connection*, IPC::MessageDecoder&)
28  0x115233407 non-virtual thunk to WebKit::WebPage::didReceiveMessage(IPC::Connection*, IPC::MessageDecoder&)
29  0x114f0102a IPC::MessageReceiverMap::dispatchMessage(IPC::Connection*, IPC::MessageDecoder&)
30  0x11536bf4a WebKit::WebProcess::didReceiveMessage(IPC::Connection*, IPC::MessageDecoder&)
31  0x114df9953 IPC::Connection::dispatchMessage(IPC::MessageDecoder&)

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions