RESOLVED FIXED 174161
[GTK] Crashes in WebCore::PasteboardHelper::fillSelectionData when source file of drag is unavailable
https://bugs.webkit.org/show_bug.cgi?id=174161
Summary [GTK] Crashes in WebCore::PasteboardHelper::fillSelectionData when source fil...
Benjamin Berg
Reported 2017-07-05 10:08:19 PDT
When I start dragging a large attachment in evolution the file corresponding to the drag will be unavailable at first (I guess it is downloaded/extracted on the fly in the background). Simply dragging over Epiphany (not even dropping) will cause the below backtrace. (gdb) bt #0 0x00007ffff415a8bc in WTFCrash() () at /usr/src/debug/webkitgtk-2.16.3/Source/WTF/wtf/Assertions.cpp:323 #1 0x00007ffff5b18037 in WTF::CrashOnOverflow::crash() () at /usr/src/debug/webkitgtk-2.16.3/Source/WTF/wtf/CheckedArithmetic.h:85 #2 0x00007ffff5b18037 in WTF::CrashOnOverflow::overflowed() () at /usr/src/debug/webkitgtk-2.16.3/Source/WTF/wtf/CheckedArithmetic.h:78 #3 0x00007ffff5b18037 in WTF::Vector<WTF::String, 0ul, WTF::CrashOnOverflow, 16ul>::at(unsigned long) (i=0, this=0x7fffffffc9d0) at /usr/src/debug/webkitgtk-2.16.3/Source/WTF/wtf/Vector.h:655 #4 0x00007ffff5b18037 in WTF::Vector<WTF::String, 0ul, WTF::CrashOnOverflow, 16ul>::operator[](unsigned long) (i=0, this=0x7fffffffc9d0) at /usr/src/debug/webkitgtk-2.16.3/Source/WTF/wtf/Vector.h:675 #5 0x00007ffff5b18037 in WebCore::PasteboardHelper::fillSelectionData(_GtkSelectionData*, unsigned int, WebCore::SelectionData&) (this=<optimized out>, data=data@entry=0x7fffffffd6f0, selection=...) at /usr/src/debug/webkitgtk-2.16.3/Source/WebCore/platform/gtk/PasteboardHelper.cpp:229 #6 0x00007ffff4b955c8 in WebKit::DragAndDropHandler::dropDataSelection(_GdkDragContext*, _GtkSelectionData*, unsigned int, WebCore::IntPoint&) (this=this@entry=0x555556695600, context=context@entry=0x5555558a0820, selectionData=0x7fffffffd6f0, info=4, position=...) at /usr/src/debug/webkitgtk-2.16.3/Source/WebKit2/UIProcess/gtk/DragAndDropHandler.cpp:193 #7 0x00007ffff4b95644 in WebKit::DragAndDropHandler::dragEntered(_GdkDragContext*, _GtkSelectionData*, unsigned int, unsigned int) (this=0x555556695600, context=0x5555558a0820, selectionData=<optimized out>, info=<optimized out>, time=0) at /usr/src/debug/webkitgtk-2.16.3/Source/WebKit2/UIProcess/gtk/DragAndDropHandler.cpp:208 #8 0x00007ffff1dffab4 in _gtk_marshal_VOID__OBJECT_INT_INT_BOXED_UINT_UINT () at /lib64/libgtk-3.so.0 #12 0x00007ffff00748eb in <emit signal 0x7ffff1f9a580 "drag-data-received" on instance 0x5555565338c0 [EphyWebView]> (instance=0x5555565338c0, detailed_signal=0x7ffff1f9a580 "drag-data-received") at gsignal.c:3487 #9 0x00007ffff00593e5 in g_closure_invoke (closure=closure@entry=0x555555860550, return_value=return_value@entry=0x0, n_param_values=7, param_values=param_values@entry=0x7fffffffcd90, invocation_hint=invocation_hint@entry=0x7fffffffcd10) at gclosure.c:804 #10 0x00007ffff006b82d in signal_emit_unlocked_R (node=node@entry=0x5555558601e0, detail=detail@entry=0, instance=instance@entry=0x5555565338c0, emission_return=emission_return@entry=0x0, instance_and_params=instance_and_params@entry=0x7fffffffcd90) at gsignal.c:3673 #11 0x00007ffff007405f in g_signal_emit_valist (instance=instance@entry=0x5555565338c0, signal_id=signal_id@entry=107, detail=detail@entry=0, var_args=var_args@entry=0x7fffffffd028) at gsignal.c:3391 #13 0x00007ffff1f729bd in gtk_drag_selection_received () at /lib64/libgtk-3.so.0 #17 0x00007ffff00748eb in <emit signal 0x7ffff1ff4344 "selection-received" on instance 0x555555871780 [GtkWindow]> (instance=0x555555871780, detailed_signal=0x7ffff1ff4344 "selection-received") at gsignal.c:3487 #14 0x00007ffff00593e5 in g_closure_invoke (closure=0x5555566dd2e0, return_value=return_value@entry=0x0, n_param_values=3, param_values=param_values@entry=0x7fffffffd380, invocation_hint=invocation_hint@entry=0x7fffffffd300) at gclosure.c:804 #15 0x00007ffff006b432 in signal_emit_unlocked_R (node=node@entry=0x5555558a4150, detail=detail@entry=0, instance=instance@entry=0x555555871780, emission_return=emission_return@entry=0x0, instance_and_params=instance_and_params@entry=0x7fffffffd380) at gsignal.c:3635 #16 0x00007ffff007405f in g_signal_emit_valist (instance=instance@entry=0x555555871780, signal_id=signal_id@entry=95, detail=detail@entry=0, var_args=var_args@entry=0x7fffffffd5b8) at gsignal.c:3391 #18 0x00007ffff1e85f33 in gtk_selection_retrieval_report () at /lib64/libgtk-3.so.0 #19 0x00007ffff1e89fed in _gtk_selection_notify () at /lib64/libgtk-3.so.0 #20 0x00007ffff1df9091 in _gtk_marshal_BOOLEAN__BOXEDv () at /lib64/libgtk-3.so.0 ---Type <return> to continue, or q <return> to quit--- #21 0x00007ffff0059614 in _g_closure_invoke_va (closure=closure@entry=0x555555898f90, return_value=return_value@entry=0x7fffffffd960, instance=instance@entry=0x555555871780, args=args@entry=0x7fffffffda30, n_params=<optimized out>, param_types=0x555555872020) at gclosure.c:867 #22 0x00007ffff00738b3 in g_signal_emit_valist (instance=0x555555871780, signal_id=<optimized out>, detail=0, var_args=var_args@entry=0x7fffffffda30) at gsignal.c:3300 #23 0x00007ffff007443f in g_signal_emit (instance=<optimized out>, signal_id=<optimized out>, detail=<optimized out>) at gsignal.c:3447 #24 0x00007ffff1f4634c in gtk_widget_event_internal () at /lib64/libgtk-3.so.0 #25 0x00007ffff1df7fc4 in gtk_main_do_event () at /lib64/libgtk-3.so.0 #26 0x00007ffff190d5c5 in _gdk_event_emit () at /lib64/libgdk-3.so.0 #27 0x00007ffff19691d2 in gdk_event_source_dispatch () at /lib64/libgdk-3.so.0 #28 0x00007fffefd80e52 in g_main_dispatch (context=0x55555584e3a0) at gmain.c:3203 #29 0x00007fffefd80e52 in g_main_context_dispatch (context=context@entry=0x55555584e3a0) at gmain.c:3856 #30 0x00007fffefd811d0 in g_main_context_iterate (context=context@entry=0x55555584e3a0, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3929 #31 0x00007fffefd8127c in g_main_context_iteration (context=context@entry=0x55555584e3a0, may_block=may_block@entry=1) at gmain.c:3990 #32 0x00007ffff0339b9d in g_application_run (application=0x5555558d6270 [EphyShell], argc=1, argv=0x7fffffffde98) at gapplication.c:2381 #33 0x0000555555586bf4 in main () (gdb)
Attachments
Another backtrace (11.21 KB, text/plain)
2017-07-10 12:01 PDT, Michael Catanzaro
no flags
Patch (2.39 KB, patch)
2017-07-11 06:25 PDT, Carlos Garcia Campos
no flags
Archive of layout-test-results from ews114 for mac-elcapitan (1.72 MB, application/zip)
2017-07-11 07:45 PDT, Build Bot
no flags
Patch (2.49 KB, patch)
2017-08-10 01:08 PDT, Carlos Garcia Campos
calvaris: review+
Benjamin Berg
Comment 1 2017-07-05 10:24:37 PDT
I guess that in: String urlWithLabel(selectionDataToUTF8String(data)); urlWithLabel becomes an empty string. And then urlWithLabel.split('\n', pieces); produces no elements as allowEmptyEntries is set to false in if not provided.
Michael Catanzaro
Comment 2 2017-07-10 11:59:45 PDT
I've hit this several times just selecting text in Epiphany and dragging it within the web view, though I can never reproduce it.
Michael Catanzaro
Comment 3 2017-07-10 12:01:20 PDT
Created attachment 315002 [details] Another backtrace
Carlos Garcia Campos
Comment 4 2017-07-11 06:12:55 PDT
(In reply to Michael Catanzaro from comment #3) > Created attachment 315002 [details] > Another backtrace This is a different issue, already reported in bug #168516. It happens when signal drag-data-get is emitted in the WebView and DragAndDropHandler::fillDragData is called. It seems that m_draggingSelectionData might be nullptr at that point, we have an ASSERT checking it, though, so it's not supposed to be nullptr. But this bug happens on drag data received, and DragAndDropHandler::dragEntered is called. Note there are two different methods named fillSelectionData in PasteboardHelper, this bug happens in one of them and bug #168516 in the other. I can't reproduce any of them, though.
Carlos Garcia Campos
Comment 5 2017-07-11 06:25:38 PDT
Created attachment 315100 [details] Patch This is a speculative fix, because I can't reproduce the issue.
Build Bot
Comment 6 2017-07-11 07:45:57 PDT
Comment on attachment 315100 [details] Patch Attachment 315100 [details] did not pass mac-debug-ews (mac): Output: http://webkit-queues.webkit.org/results/4100804 New failing tests: storage/indexeddb/modern/new-database-after-user-delete.html
Build Bot
Comment 7 2017-07-11 07:45:58 PDT
Created attachment 315110 [details] Archive of layout-test-results from ews114 for mac-elcapitan The attached test failures were seen while running run-webkit-tests on the mac-debug-ews. Bot: ews114 Port: mac-elcapitan Platform: Mac OS X 10.11.6
Michael Catanzaro
Comment 8 2017-07-11 08:31:05 PDT
Comment on attachment 315100 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=315100&action=review > Source/WebCore/ChangeLog:14 > + (WebCore::PasteboardHelper::fillSelectionData): Return early if selection data length is 0, intead of checking instead
Carlos Garcia Campos
Comment 9 2017-07-12 00:02:35 PDT
Xabier Rodríguez Calvar
Comment 10 2017-08-08 02:47:25 PDT
I just confirmed that I am running a version of webkit with this patch included and it still crashes with: #0 0x00007f219965d43c in WTFCrash () from /home/calvaris/gnome/jhbuild/build/install/lib/libjavascriptcoregtk-4.0.so.18 No symbol table info available. #1 0x00007f219b1efe24 in WebCore::PasteboardHelper::fillSelectionData(_GtkSelectionData*, unsigned int, WebCore::SelectionData&) () from /home/calvaris/gnome/jhbuild/build/install/lib/libwebkit2gtk-4.0.so.37 No symbol table info available. #2 0x00007f219a14a598 in WebKit::DragAndDropHandler::dropDataSelection(_GdkDragContext*, _GtkSelectionData*, unsigned int, WebCore::IntPoint&) () from /home/calvaris/gnome/jhbuild/build/install/lib/libwebkit2gtk-4.0.so.37 No symbol table info available. #3 0x00007f219a14a604 in WebKit::DragAndDropHandler::dragEntered(_GdkDragContext*, _GtkSelectionData*, unsigned int, unsigned int) () from /home/calvaris/gnome/jhbuild/build/install/lib/libwebkit2gtk-4.0.so.37 No symbol table info available. #4 0x00007f219e165714 in _gtk_marshal_VOID__OBJECT_INT_INT_BOXED_UINT_UINT (closure=0x55dc8e310e40, return_value=<optimized out>, n_param_values=<optimized out>, param_values=0x7fff48e5c3c0, invocation_hint=<optimized out>, marshal_data=<optimized out>) at gtkmarshalers.c:5566 cc = 0x55dc8e310e40 data1 = 0x55dc8fc4ae20 data2 = <optimized out> callback = 0x7f219a132b30 <webkitWebViewBaseDragDataReceived(_GtkWidget*, _GdkDragContext*, int, int, _GtkSelectionData*, unsigned int, unsigned int)> __func__ = "_gtk_marshal_VOID__OBJECT_INT_INT_BOXED_UINT_UINT" #5 0x00007f219eb56755 in g_closure_invoke (closure=closure@entry=0x55dc8e310e40, return_value=return_value@entry=0x0, n_param_values=7, param_values=param_values@entry=0x7fff48e5c3c0, invocation_hint=invocation_hint@entry=0x7fff48e5c360) at /home/calvaris/gnome/jhbuild/build/src/glib/gobject/gclosure.c:804 marshal = <optimized out> marshal_data = <optimized out> in_marshal = 0 real_closure = 0x55dc8e310e20 __func__ = "g_closure_invoke" #6 0x00007f219eb6952d in signal_emit_unlocked_R (node=node@entry=0x55dc8e310ed0, detail=detail@entry=0, instance=instance@entry=0x55dc8fc4ae20, emission_return=emission_return@entry=0x0, instance_and_params=instance_and_params@entry=0x7fff48e5c3c0) at /home/calvaris/gnome/jhbuild/build/src/glib/gobject/gsignal.c:3673 accumulator = 0x0 emission = {next = 0x7fff48e5c8d0, instance = 0x55dc8fc4ae20, ihint = {signal_id = 93, detail = 0, run_type = G_SIGNAL_RUN_LAST}, state = EMISSION_RUN, chain_type = 94405767569696} handler_list = <optimized out> return_accu = 0x0 accu = {g_type = 0, data = {{v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}, {v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}}} signal_id = 93 max_sequential_handler_number = 29513 return_value_altered = 0 #7 0x00007f219eb71f91 in g_signal_emit_valist (instance=instance@entry=0x55dc8fc4ae20, signal_id=signal_id@entry=93, detail=detail@entry=0, var_args=var_args@entry=0x7fff48e5c610) at /home/calvaris/gnome/jhbuild/build/src/glib/gobject/gsignal.c:3391 instance_and_params = 0x7fff48e5c3c0 signal_return_type = <optimized out> param_values = 0x7fff48e5c3d8 i = <optimized out> n_params = <optimized out> __func__ = "g_signal_emit_valist" #8 0x00007f219eb72808 in g_signal_emit_by_name (instance=instance@entry=0x55dc8fc4ae20, detailed_signal=detailed_signal@entry=0x7f219e2f47f0 "drag-data-received") at /home/calvaris/gnome/jhbuild/build/src/glib/gobject/gsignal.c:3487 var_args = {{gp_offset = 48, fp_offset = 48, overflow_arg_area = 0x7fff48e5c730, reg_save_area = 0x7fff48e5c630}} detail = 0 itype = 94405767569696 __func__ = "g_signal_emit_by_name" #9 0x00007f219e2cd8dd in gtk_drag_selection_received (widget=0x55dc8e5b7f50, selection_data=0x7fff48e5cc40, time=7055131, data=0x55dc8fc4ae20) at /home/calvaris/gnome/jhbuild/build/src/gtk+-3/gtk/gtkdnd.c:1181 site = <optimized out> context = 0x55dc8e5f6cc0 ---Type <return> to continue, or q <return> to quit--- info = 0x7f208c02ae00 drop_widget = 0x55dc8fc4ae20 target = 0x84 #10 0x00007f219eb56755 in g_closure_invoke (closure=0x55dc90457770, return_value=return_value@entry=0x0, n_param_values=3, param_values=param_values@entry=0x7fff48e5c940, invocation_hint=invocation_hint@entry=0x7fff48e5c8e0) at /home/calvaris/gnome/jhbuild/build/src/glib/gobject/gclosure.c:804 marshal = <optimized out> marshal_data = <optimized out> in_marshal = 0 real_closure = 0x55dc90457750 __func__ = "g_closure_invoke" #11 0x00007f219eb69132 in signal_emit_unlocked_R (node=node@entry=0x55dc8e30c190, detail=detail@entry=0, instance=instance@entry=0x55dc8e5b7f50, emission_return=emission_return@entry=0x0, instance_and_params=instance_and_params@entry=0x7fff48e5c940) at /home/calvaris/gnome/jhbuild/build/src/glib/gobject/gsignal.c:3635 tmp = <optimized out> handler = 0x55dc902a3180 accumulator = 0x0 emission = {next = 0x7fff48e5d010, instance = 0x55dc8e5b7f50, ihint = {signal_id = 81, detail = 0, run_type = G_SIGNAL_RUN_FIRST}, state = EMISSION_RUN, chain_type = 4} handler_list = 0x55dc902a3180 return_accu = 0x0 accu = {g_type = 0, data = {{v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}, {v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}}} signal_id = 81 max_sequential_handler_number = 29513 return_value_altered = 0 #12 0x00007f219eb71f91 in g_signal_emit_valist (instance=instance@entry=0x55dc8e5b7f50, signal_id=signal_id@entry=81, detail=detail@entry=0, var_args=var_args@entry=0x7fff48e5cb30) at /home/calvaris/gnome/jhbuild/build/src/glib/gobject/gsignal.c:3391 instance_and_params = 0x7fff48e5c940 signal_return_type = <optimized out> param_values = 0x7fff48e5c958 i = <optimized out> n_params = <optimized out> __func__ = "g_signal_emit_valist" #13 0x00007f219eb72808 in g_signal_emit_by_name (instance=0x55dc8e5b7f50, detailed_signal=detailed_signal@entry=0x7f219e351e24 "selection-received") at /home/calvaris/gnome/jhbuild/build/src/glib/gobject/gsignal.c:3487 var_args = {{gp_offset = 32, fp_offset = 48, overflow_arg_area = 0x7fff48e5cc40, reg_save_area = 0x7fff48e5cb50}} detail = 0 itype = 94405766740384 __func__ = "g_signal_emit_by_name" #14 0x00007f219e1e77d3 in gtk_selection_retrieval_report (info=info@entry=0x7f208c00c380, type=<optimized out>, format=<optimized out>, buffer=<optimized out>, length=<optimized out>, time=time@entry=7055131) at /home/calvaris/gnome/jhbuild/build/src/gtk+-3/gtk/gtkselection.c:3031 data = {selection = 0xbe, target = 0x84, type = 0x0, format = 0, data = 0x0, length = -1, display = 0x55dc8e2e30e0} #15 0x00007f219e1e9461 in gtk_selection_convert (widget=0x55dc8e5b7f50, selection=0xbe, target=0x84, time_=7055131) at /home/calvaris/gnome/jhbuild/build/src/gtk+-3/gtk/gtkselection.c:1143 owner_widget = <optimized out> owner_widget_ptr = 0x55dc8e5b7770 selection_data = {selection = 0xbe, target = 0x84, type = 0x0, format = 0, data = 0x0, length = -1, display = 0x55dc8e2e30e0} info = 0x7f208c00c380 tmp_list = <optimized out> owner_window = <optimized out> display = 0x55dc8e2e30e0 id = <optimized out> __func__ = "gtk_selection_convert" #16 0x00007f219a14b15a in WebKit::DragAndDropHandler::dragDataSelection(_GdkDragContext*, WebCore::IntPoint const&, unsigned int) () from /home/calvaris/gnome/jhbuild/build/install/lib/libwebkit2gtk-4.0.so.37 ---Type <return> to continue, or q <return> to quit--- No symbol table info available. #17 0x00007f219a14b41f in WebKit::DragAndDropHandler::dragMotion(_GdkDragContext*, WebCore::IntPoint const&, unsigned int) () from /home/calvaris/gnome/jhbuild/build/install/lib/libwebkit2gtk-4.0.so.37 No symbol table info available. #18 0x00007f219a132bc3 in webkitWebViewBaseDragMotion(_GtkWidget*, _GdkDragContext*, int, int, unsigned int) () from /home/calvaris/gnome/jhbuild/build/install/lib/libwebkit2gtk-4.0.so.37 No symbol table info available. #19 0x00007f219e160327 in _gtk_marshal_BOOLEAN__OBJECT_INT_INT_UINT (closure=0x55dc8e310580, return_value=0x7fff48e5cfd0, n_param_values=<optimized out>, param_values=0x7fff48e5d080, invocation_hint=<optimized out>, marshal_data=<optimized out>) at gtkmarshalers.c:809 cc = 0x55dc8e310580 data1 = 0x55dc8fc4ae20 data2 = <optimized out> callback = 0x7f219a132b80 <webkitWebViewBaseDragMotion(_GtkWidget*, _GdkDragContext*, int, int, unsigned int)> v_return = <optimized out> __func__ = "_gtk_marshal_BOOLEAN__OBJECT_INT_INT_UINT" #20 0x00007f219eb56755 in g_closure_invoke (closure=closure@entry=0x55dc8e310580, return_value=return_value@entry=0x7fff48e5cfd0, n_param_values=5, param_values=param_values@entry=0x7fff48e5d080, invocation_hint=invocation_hint@entry=0x7fff48e5d020) at /home/calvaris/gnome/jhbuild/build/src/glib/gobject/gclosure.c:804 marshal = <optimized out> marshal_data = <optimized out> in_marshal = 0 real_closure = 0x55dc8e310560 __func__ = "g_closure_invoke" #21 0x00007f219eb6952d in signal_emit_unlocked_R (node=<optimized out>, detail=detail@entry=0, instance=instance@entry=0x55dc8fc4ae20, emission_return=emission_return@entry=0x7fff48e5d1b0, instance_and_params=instance_and_params@entry=0x7fff48e5d080) at /home/calvaris/gnome/jhbuild/build/src/glib/gobject/gsignal.c:3673 accumulator = 0x55dc8e310990 emission = {next = 0x0, instance = 0x55dc8fc4ae20, ihint = {signal_id = 90, detail = 0, run_type = G_SIGNAL_RUN_LAST}, state = EMISSION_RUN, chain_type = 94405767569696} handler_list = <optimized out> return_accu = 0x7fff48e5cfd0 accu = {g_type = 20, data = {{v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}, {v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}}} signal_id = 90 max_sequential_handler_number = 29485 return_value_altered = 0 #22 0x00007f219eb71a18 in g_signal_emit_valist (instance=instance@entry=0x55dc8fc4ae20, signal_id=signal_id@entry=90, detail=detail@entry=0, var_args=var_args@entry=0x7fff48e5d2a0) at /home/calvaris/gnome/jhbuild/build/src/glib/gobject/gsignal.c:3401 return_value = {g_type = 20, data = {{v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}, {v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}}} error = 0x0 rtype = 20 static_scope = 0 instance_and_params = 0x7fff48e5d080 signal_return_type = <optimized out> param_values = 0x7fff48e5d098 i = <optimized out> n_params = <optimized out> __func__ = "g_signal_emit_valist" #23 0x00007f219eb72808 in g_signal_emit_by_name (instance=instance@entry=0x55dc8fc4ae20, detailed_signal=detailed_signal@entry=0x7f219e324029 "drag-motion") at /home/calvaris/gnome/jhbuild/build/src/glib/gobject/gsignal.c:3487 var_args = {{gp_offset = 48, fp_offset = 48, overflow_arg_area = 0x7fff48e5d3b0, reg_save_area = 0x7fff48e5d2c0}} detail = 0 itype = 94405767569696 __func__ = "g_signal_emit_by_name" #24 0x00007f219e2ce624 in gtk_drag_dest_motion (widget=0x55dc8fc4ae20, context=0x55dc8e5f6cc0, x=469, y=794, time=7055131) at /home/calvaris/gnome/jhbuild/build/src/gtk+-3/gtk/gtkdnd.c:1564 ---Type <return> to continue, or q <return> to quit--- site = 0x55dc8fcc44d0 action = <optimized out> retval = -1640498656 __func__ = "gtk_drag_dest_motion" #25 0x00007f219e2cecd0 in gtk_drag_find_widget (callback=0x7f219e2ce500 <gtk_drag_dest_motion>, time=7055131, y=<optimized out>, x=<optimized out>, info=0x7f208c02ae00, context=0x55dc8e5f6cc0, widget=0x55dc8fc4ae20) at /home/calvaris/gnome/jhbuild/build/src/gtk+-3/gtk/gtkdnd.c:1262 parent = 0x0 hierarchy = 0x55dc8e469b00 found = 0 #26 _gtk_drag_dest_handle_event (toplevel=toplevel@entry=0x55dc8e5143a0, event=event@entry=0x55dc8e7255b0) at /home/calvaris/gnome/jhbuild/build/src/gtk+-3/gtk/gtkdnd.c:1083 window = <optimized out> tx = 0 ty = 27 info = 0x7f208c02ae00 context = 0x55dc8e5f6cc0 __func__ = "_gtk_drag_dest_handle_event" #27 0x00007f219e15e51c in gtk_main_do_event (event=0x55dc8e7255b0) at /home/calvaris/gnome/jhbuild/build/src/gtk+-3/gtk/gtkmain.c:1919 event_widget = 0x55dc8e5143a0 grab_widget = 0x55dc8e5143a0 topmost_widget = <optimized out> window_group = 0x55dc8e3818e0 rewritten_event = <optimized out> device = 0x55dc8e2fb000 tmp_list = <optimized out> __func__ = "gtk_main_do_event" #28 0x00007f219d0f23b5 in _gdk_event_emit (event=event@entry=0x55dc8e7255b0) at /home/calvaris/gnome/jhbuild/build/src/gtk+-3/gdk/gdkevents.c:73 No locals. #29 0x00007f219d1224c2 in gdk_event_source_dispatch (source=<optimized out>, callback=<optimized out>, user_data=<optimized out>) at /home/calvaris/gnome/jhbuild/build/src/gtk+-3/gdk/x11/gdkeventsource.c:367 display = <optimized out> event = 0x55dc8e7255b0 #30 0x00007f219e87c797 in g_main_dispatch (context=0x55dc8e300ef0) at /home/calvaris/gnome/jhbuild/build/src/glib/glib/gmain.c:3148 dispatch = 0x7f219d1224a0 <gdk_event_source_dispatch> prev_source = 0x0 was_in_call = 0 user_data = 0x0 callback = 0x0 cb_funcs = <optimized out> cb_data = <optimized out> need_destroy = <optimized out> source = 0x55dc8e2fa000 current = 0x55dc8e3e4e80 i = 0 #31 g_main_context_dispatch (context=context@entry=0x55dc8e300ef0) at /home/calvaris/gnome/jhbuild/build/src/glib/glib/gmain.c:3813 No locals. #32 0x00007f219e87c9d8 in g_main_context_iterate (context=context@entry=0x55dc8e300ef0, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at /home/calvaris/gnome/jhbuild/build/src/glib/glib/gmain.c:3886 max_priority = 0 timeout = 0 some_ready = 1 nfds = 4 allocated_nfds = 4 ---Type <return> to continue, or q <return> to quit--- fds = <optimized out> #33 0x00007f219e87ca7c in g_main_context_iteration (context=context@entry=0x55dc8e300ef0, may_block=may_block@entry=1) at /home/calvaris/gnome/jhbuild/build/src/glib/glib/gmain.c:3947 retval = <optimized out> #34 0x00007f219ee3ec7d in g_application_run (application=0x55dc8e512160, argc=<optimized out>, argv=0x7fff48e5d7c8) at /home/calvaris/gnome/jhbuild/build/src/glib/gio/gapplication.c:2401 arguments = 0x55dc8e3b6440 status = 0 context = 0x55dc8e300ef0 acquired_context = <optimized out> __func__ = "g_application_run" #35 0x000055dc8caadb1d in main (argc=<optimized out>, argv=<optimized out>) at ../../../src/epiphany/src/ephy-main.c:432 option_context = <optimized out> option_group = <optimized out> error = 0x0 arbitrary_url = <optimized out> ctx = <optimized out> startup_flags = <optimized out> mode = <optimized out> status = <optimized out> flags = <optimized out> desktop_info = <optimized out>
Xabier Rodríguez Calvar
Comment 11 2017-08-08 02:49:12 PDT
To reproduce it I use the Wunderlist website and try to drag a task from one list to another.
Carlos Garcia Campos
Comment 12 2017-08-10 01:08:43 PDT
Created attachment 317794 [details] Patch Calvaris, could you try this patch, please?
Xabier Rodríguez Calvar
Comment 13 2017-08-10 01:47:11 PDT
Comment on attachment 317794 [details] Patch Patch works
Carlos Garcia Campos
Comment 14 2017-08-10 04:02:43 PDT
Note You need to log in before you can comment on or make changes to this bug.