RESOLVED INVALID 205861
[GTK][Flatpak SDK] Crashes in GTK drag and drop
https://bugs.webkit.org/show_bug.cgi?id=205861
Summary [GTK][Flatpak SDK] Crashes in GTK drag and drop
Philippe Normand
Reported 2020-01-07 07:53:19 PST
In my flatpak-ng setup I have GTK 3.24.10 (from the FDO SDK). Tests like editing/pasteboard/4947130.html now crash: Thread 1 (LWP 48): #0 0x00007f623e4770b5 in () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0 #1 0x00007f623e478386 in g_logv () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0 #2 0x00007f623e478553 in g_log () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0 #3 0x00007f623e94cd9d in gdk_cursor_new_from_pixbuf () at /usr/lib/x86_64-linux-gnu/libgdk-3.so.0 #4 0x00007f623edd95b1 in () at /usr/lib/x86_64-linux-gnu/libgtk-3.so.0 #5 0x00007f623eddb6fd in () at /usr/lib/x86_64-linux-gnu/libgtk-3.so.0 #6 0x00007f623eddc1ac in gtk_drag_begin () at /usr/lib/x86_64-linux-gnu/libgtk-3.so.0 #7 0x00007f624af8fd0e in _ZN6WebKit18DragAndDropHandler9startDragEON3WTF3RefIN7WebCore13SelectionDataENS1_13DumbPtrTraitsIS4_EEEENS3_13DragOperationEONS1_6RefPtrINS_15ShareableBitmapENS5_ISB_EEEE (this=0x7f620c6f4e00, selection=..., dragOperation=WebCore::DragOperationEvery, dragImage=...) at ../../Source/WebKit/UIProcess/gtk/DragAndDropHandler.cpp:121 #8 0x00007f624ae426d4 in _ZN6WebKit14PageClientImpl9startDragEON3WTF3RefIN7WebCore13SelectionDataENS1_13DumbPtrTraitsIS4_EEEENS3_13DragOperationEONS1_6RefPtrINS_15ShareableBitmapENS5_ISB_EEEE (this=0x7f620c6df900, selection=..., dragOperation=WebCore::DragOperationEvery, dragImage=...) at ../../Source/WebKit/UIProcess/API/gtk/PageClientImpl.cpp:305 #9 0x00007f624abf3e12 in _ZN6WebKit12WebPageProxy9startDragEONS_16WebSelectionDataEmRKNS_15ShareableBitmap6HandleE (this=0x7f620c2fd800, selection=..., dragOperation=4294967295, dragImageHandle=...) at ../../Source/WebKit/UIProcess/WebPageProxy.cpp:2347 #10 0x00007f624a51006a in _ZN3IPC22callMemberFunctionImplIN6WebKit12WebPageProxyEMS2_FvONS1_16WebSelectionDataEmRKNS1_15ShareableBitmap6HandleEESt5tupleIJS3_mS6_EEJLm0ELm1ELm2EEEEvPT_T0_OT1_St16integer_sequenceImJXspT2_EEE (object=0x7f620c2fd800, function=(void (WebKit::WebPageProxy::*)(WebKit::WebPageProxy * const, WebKit::WebSelectionData &&, unsigned long, const WebKit::ShareableBitmap::Handle &)) 0x7f624abf3d5a <_ZN6WebKit12WebPageProxy9startDragEONS_16WebSelectionDataEmRKNS_15ShareableBitmap6HandleE>, args=...) at ../../Source/WebKit/Platform/IPC/HandleMessage.h:41 #11 0x00007f624a4fabf0 in _ZN3IPC18callMemberFunctionIN6WebKit12WebPageProxyEMS2_FvONS1_16WebSelectionDataEmRKNS1_15ShareableBitmap6HandleEESt5tupleIJS3_mS6_EESt16integer_sequenceImJLm0ELm1ELm2EEEEEvOT1_PT_T0_ (args=..., object=0x7f620c2fd800, function=(void (WebKit::WebPageProxy::*)(WebKit::WebPageProxy * const, WebKit::WebSelectionData &&, unsigned long, const WebKit::ShareableBitmap::Handle &)) 0x7f624abf3d5a <_ZN6WebKit12WebPageProxy9startDragEONS_16WebSelectionDataEmRKNS_15ShareableBitmap6HandleE>) at ../../Source/WebKit/Platform/IPC/HandleMessage.h:47 #12 0x00007f624a4e7fa6 in _ZN3IPC13handleMessageIN8Messages12WebPageProxy9StartDragEN6WebKit12WebPageProxyEMS5_FvONS4_16WebSelectionDataEmRKNS4_15ShareableBitmap6HandleEEEEvRNS_7DecoderEPT0_T1_ (decoder=..., object=0x7f620c2fd800, function=(void (WebKit::WebPageProxy::*)(WebKit::WebPageProxy * const, WebKit::WebSelectionData &&, unsigned long, const WebKit::ShareableBitmap::Handle &)) 0x7f624abf3d5a <_ZN6WebKit12WebPageProxy9startDragEONS_16WebSelectionDataEmRKNS_15ShareableBitmap6HandleE>) at ../../Source/WebKit/Platform/IPC/HandleMessage.h:120 #13 0x00007f624a4d410c in _ZN6WebKit12WebPageProxy17didReceiveMessageERN3IPC10ConnectionERNS1_7DecoderE (this=0x7f620c2fd800, connection=..., decoder=...) at DerivedSources/WebKit/WebPageProxyMessageReceiver.cpp:1555 #14 0x00007f624aa2bc12 in _ZN3IPC18MessageReceiverMap15dispatchMessageERNS_10ConnectionERNS_7DecoderE (this=0x7f620c6c7538, connection=..., decoder=...) at ../../Source/WebKit/Platform/IPC/MessageReceiverMap.cpp:123 #15 0x00007f624ab59c41 in _ZN6WebKit21AuxiliaryProcessProxy15dispatchMessageERN3IPC10ConnectionERNS1_7DecoderE (this=0x7f620c6c7500, connection=..., decoder=...) at ../../Source/WebKit/UIProcess/AuxiliaryProcessProxy.cpp:196 #16 0x00007f624acc6e72 in _ZN6WebKit15WebProcessProxy17didReceiveMessageERN3IPC10ConnectionERNS1_7DecoderE (this=0x7f620c6c7500, connection=..., decoder=...) at ../../Source/WebKit/UIProcess/WebProcessProxy.cpp:718 #17 0x00007f624aa0c0cd in _ZN3IPC10Connection15dispatchMessageERNS_7DecoderE (this=0x7f620c6b9000, decoder=...) at ../../Source/WebKit/Platform/IPC/Connection.cpp:1008 #18 0x00007f624aa0c7b9 in _ZN3IPC10Connection15dispatchMessageESt10unique_ptrINS_7DecoderESt14default_deleteIS2_EE (this=0x7f620c6b9000, message=std::unique_ptr<IPC::Decoder> = {...}) at ../../Source/WebKit/Platform/IPC/Connection.cpp:1077 #19 0x00007f624aa12b08 in _ZN3IPC10Connection16SyncMessageState28ConnectionAndIncomingMessage8dispatchEv (this=0x7f620c692a00) at ../../Source/WebKit/Platform/IPC/Connection.cpp:119 #20 0x00007f624aa07df8 in _ZN3IPC10Connection16SyncMessageState16dispatchMessagesEv (this=0x7f6254799d08 <_ZZN3IPC10Connection16SyncMessageState9singletonEvE16syncMessageState+8>) at ../../Source/WebKit/Platform/IPC/Connection.cpp:179 #21 0x00007f624aa0bb12 in _ZN3IPC10Connection19dispatchSyncMessageERNS_7DecoderE (this=0x7f620c6b9000, decoder=...) at ../../Source/WebKit/Platform/IPC/Connection.cpp:926 #22 0x00007f624aa0c799 in _ZN3IPC10Connection15dispatchMessageESt10unique_ptrINS_7DecoderESt14default_deleteIS2_EE (this=0x7f620c6b9000, message=std::unique_ptr<IPC::Decoder> = {...}) at ../../Source/WebKit/Platform/IPC/Connection.cpp:1075 #23 0x00007f624aa12b08 in _ZN3IPC10Connection16SyncMessageState28ConnectionAndIncomingMessage8dispatchEv (this=0x7f620c6b3700) at ../../Source/WebKit/Platform/IPC/Connection.cpp:119 #24 0x00007f624aa07df8 in _ZN3IPC10Connection16SyncMessageState16dispatchMessagesEv (this=0x7f6254799d08 <_ZZN3IPC10Connection16SyncMessageState9singletonEvE16syncMessageState+8>) at ../../Source/WebKit/Platform/IPC/Connection.cpp:179 #25 0x00007f624aa0a211 in _ZN3IPC10Connection16waitForSyncReplyEmNS_15StringReferenceES1_N3WTF7SecondsENS2_9OptionSetINS_14SendSyncOptionEEE (this=0x7f620c6b9000, syncRequestID=3, messageReceiverName=..., messageName=..., timeout=..., sendSyncOptions=...) at ../../Source/WebKit/Platform/IPC/Connection.cpp:637 #26 0x00007f624aa0a05c in _ZN3IPC10Connection15sendSyncMessageEmSt10unique_ptrINS_7EncoderESt14default_deleteIS2_EEN3WTF7SecondsENS6_9OptionSetINS_14SendSyncOptionEEE (this=0x7f620c6b9000, syncRequestID=3, encoder=std::unique_ptr<IPC::Encoder> = {...}, timeout=..., sendSyncOptions=...) at ../../Source/WebKit/Platform/IPC/Connection.cpp:610 #27 0x00007f624aa09531 in _ZN3IPC10Connection11sendMessageESt10unique_ptrINS_7EncoderESt14default_deleteIS2_EEN3WTF9OptionSetINS_10SendOptionEEE (this=0x7f620c6b9000, encoder=std::unique_ptr<IPC::Encoder> = {...}, sendOptions=...) at ../../Source/WebKit/Platform/IPC/Connection.cpp:461 #28 0x00007f624ab59a41 in _ZN6WebKit21AuxiliaryProcessProxy11sendMessageESt10unique_ptrIN3IPC7EncoderESt14default_deleteIS3_EEN3WTF9OptionSetINS2_10SendOptionEEEONS7_8OptionalISt4pairINS7_17CompletionHandlerIFvPNS2_7DecoderEEEEmEEE (this=0x7f620c6c7500, encoder=std::unique_ptr<IPC::Encoder> = {...}, sendOptions=..., asyncReplyInfo=...) at ../../Source/WebKit/UIProcess/AuxiliaryProcessProxy.cpp:157 #29 0x00007f624ac08f1c in _ZN6WebKit12WebPageProxy11sendMessageESt10unique_ptrIN3IPC7EncoderESt14default_deleteIS3_EEN3WTF9OptionSetINS2_10SendOptionEEEONS7_8OptionalISt4pairINS7_17CompletionHandlerIFvPNS2_7DecoderEEEEmEEE (this=0x7f620c2fd800, encoder=std::unique_ptr<IPC::Encoder> = {...}, sendOptions=..., asyncReplyInfo=...) at ../../Source/WebKit/UIProcess/WebPageProxy.cpp:6122 #30 0x00007f624ac54e87 in _ZN3IPC13MessageSender4sendIN8Messages7WebPage10MouseEventEEEbRKT_mN3WTF9OptionSetINS_10SendOptionEEE (this=0x7f620c2fd830, message=..., destinationID=7, sendOptions=...) at ../../Source/WebKit/Platform/IPC/MessageSender.h:49 #31 0x00007f624ac38d07 in _ZN3IPC13MessageSender4sendIN8Messages7WebPage10MouseEventEEEbRKT_N3WTF9OptionSetINS_10SendOptionEEE (this=0x7f620c2fd830, message=..., sendOptions=...) at ../../Source/WebKit/Platform/IPC/MessageSender.h:39 #32 0x00007f624abf4549 in _ZN6WebKit12WebPageProxy27processNextQueuedMouseEventEv (this=0x7f620c2fd800) at ../../Source/WebKit/UIProcess/WebPageProxy.cpp:2474 #33 0x00007f624abf436d in _ZN6WebKit12WebPageProxy16handleMouseEventERKNS_19NativeWebMouseEventE (this=0x7f620c2fd800, event=...) at ../../Source/WebKit/UIProcess/WebPageProxy.cpp:2450 #34 0x00007f624ae663d9 in webkitWebViewBaseHandleMouseEvent(WebKitWebViewBase*, GdkEvent*) (webViewBase=0x5569bb05e640, event=0x5569bab1ddb0) at ../../Source/WebKit/UIProcess/API/gtk/WebKitWebViewBase.cpp:879 #35 0x00007f624ae66969 in webkitWebViewBaseMotionNotifyEvent(GtkWidget*, GdkEventMotion*) (widget=0x5569bb05e640, event=0x5569bab1ddb0) at ../../Source/WebKit/UIProcess/API/gtk/WebKitWebViewBase.cpp:988 #36 0x00007f623ee0173f in () at /usr/lib/x86_64-linux-gnu/libgtk-3.so.0 #37 0x00007f623e55b996 in () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #38 0x00007f623e577dbb in g_signal_emit_valist () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #39 0x00007f623e5789a3 in g_signal_emit () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #40 0x00007f623edac3b3 in () at /usr/lib/x86_64-linux-gnu/libgtk-3.so.0 #41 0x00007f623ec68bd8 in () at /usr/lib/x86_64-linux-gnu/libgtk-3.so.0 #42 0x00007f623ec6adeb in gtk_main_do_event () at /usr/lib/x86_64-linux-gnu/libgtk-3.so.0 #43 0x00005569b9f49276 in _ZN3WTR16EventSenderProxy13dispatchEventEP9_GdkEvent (this=0x7f620c6ec0b0, event=0x5569bab1ddb0) at ../../Tools/WebKitTestRunner/gtk/EventSenderProxyGtk.cpp:160 #44 0x00005569b9f492f0 in _ZN3WTR16EventSenderProxy17replaySavedEventsEv (this=0x7f620c6ec0b0) at ../../Tools/WebKitTestRunner/gtk/EventSenderProxyGtk.cpp:171 #45 0x00005569b9f4937c in _ZN3WTR16EventSenderProxy16sendOrQueueEventEP9_GdkEvent (this=0x7f620c6ec0b0, event=0x5569bab1ddb0) at ../../Tools/WebKitTestRunner/gtk/EventSenderProxyGtk.cpp:183 #46 0x00005569b9f49ed2 in _ZN3WTR16EventSenderProxy11mouseMoveToEdd (this=0x7f620c6ec0b0, x=60, y=111) at ../../Tools/WebKitTestRunner/gtk/EventSenderProxyGtk.cpp:386 #47 0x00005569b9ef6ba2 in _ZN3WTR14TestController46didReceiveSynchronousMessageFromInjectedBundleEPK14OpaqueWKStringPKvPK23OpaqueWKMessageListener (this=0x7ffd43c8e5d0, messageName=0x7f620c694a98, messageBody=0x7f620c6ebdc8, listener=0x7f620c6bfc80) at ../../Tools/WebKitTestRunner/TestController.cpp:2031 #48 0x00005569b9ef598c in _ZN3WTR14TestController62didReceiveSynchronousPageMessageFromInjectedBundleWithListenerEPK12OpaqueWKPagePK14OpaqueWKStringPKvPK23OpaqueWKMessageListenerS8_ (page=0x7f620c2fd800, messageName=0x7f620c694a98, messageBody=0x7f620c6ebdc8, listener=0x7f620c6bfc80, clientInfo=0x7ffd43c8e5d0) at ../../Tools/WebKitTestRunner/TestController.cpp:1839 #49 0x00007f624abe81b1 in _ZN6WebKit27WebPageInjectedBundleClient46didReceiveSynchronousMessageFromInjectedBundleEPNS_12WebPageProxyERKN3WTF6StringEPN3API6ObjectEONS3_17CompletionHandlerIFvNS3_6RefPtrIS8_NS3_13DumbPtrTraitsIS8_EEEEEEE (this=0x7f620c6fa5c8, page=0x7f620c2fd800, messageName="EventSender", messageBody=0x7f620c6ebdc8, completionHandler=...) at ../../Source/WebKit/UIProcess/WebPageInjectedBundleClient.cpp:58 #50 0x00007f624abebb75 in _ZN6WebKit12WebPageProxy24handleSynchronousMessageERN3IPC10ConnectionERKN3WTF6StringERKNS_8UserDataEONS4_17CompletionHandlerIFvOS8_EEE (this=0x7f620c2fd800, connection=..., messageName="EventSender", messageBody=..., completionHandler=...) at ../../Source/WebKit/UIProcess/WebPageProxy.cpp:735 #51 0x00007f624a519284 in _ZN3IPC22callMemberFunctionImplIN6WebKit12WebPageProxyEMS2_FvRNS_10ConnectionERKN3WTF6StringERKNS1_8UserDataEONS5_17CompletionHandlerIFvOS9_EEEEFvSB_ESt5tupleIJS6_S9_EEJLm0ELm1EEEEvS4_PT_T0_ONSC_IT1_EEOT2_St16integer_sequenceImJXspT3_EEE (connection=..., object=0x7f620c2fd800, function=(void (WebKit::WebPageProxy::*)(WebKit::WebPageProxy * const, IPC::Connection &, const WTF::String &, const WebKit::UserData &, WTF::CompletionHandler<void(WebKit::UserData&&)> &&)) 0x7f624abeb9ec <_ZN6WebKit12WebPageProxy24handleSynchronousMessageERN3IPC10ConnectionERKN3WTF6StringERKNS_8UserDataEONS4_17CompletionHandlerIFvOS8_EEE>, completionHandler=..., args=...) at ../../Source/WebKit/Platform/IPC/HandleMessage.h:69 #52 0x00007f624a4ffcd9 in _ZN3IPC18callMemberFunctionIN6WebKit12WebPageProxyEMS2_FvRNS_10ConnectionERKN3WTF6StringERKNS1_8UserDataEONS5_17CompletionHandlerIFvOS9_EEEEFvSB_ESt5tupleIJS6_S9_EESt16integer_sequenceImJLm0ELm1EEEEEvS4_OT2_ONSC_IT1_EEPT_T0_ (connection=..., args=..., completionHandler=..., object=0x7f620c2fd800, function=(void (WebKit::WebPageProxy::*)(WebKit::WebPageProxy * const, IPC::Connection &, const WTF::String &, const WebKit::UserData &, WTF::CompletionHandler<void(WebKit::UserData&&)> &&)) 0x7f624abeb9ec <_ZN6WebKit12WebPageProxy24handleSynchronousMessageERN3IPC10ConnectionERKN3WTF6StringERKNS_8UserDataEONS4_17CompletionHandlerIFvOS8_EEE>) at ../../Source/WebKit/Platform/IPC/HandleMessage.h:75 #53 0x00007f624a4ef167 in _ZN3IPC39handleMessageSynchronousWantsConnectionIN8Messages12WebPageProxy24HandleSynchronousMessageEN6WebKit12WebPageProxyEMS5_FvRNS_10ConnectionERKN3WTF6StringERKNS4_8UserDataEONS8_17CompletionHandlerIFvOSC_EEEEEEvS7_RNS_7DecoderERSt10unique_ptrINS_7EncoderESt14default_deleteISP_EEPT0_T1_ (connection=..., decoder=..., replyEncoder=std::unique_ptr<IPC::Encoder> = {...}, object=0x7f620c2fd800, function=(void (WebKit::WebPageProxy::*)(WebKit::WebPageProxy * const, IPC::Connection &, const WTF::String &, const WebKit::UserData &, WTF::CompletionHandler<void(WebKit::UserData&&)> &&)) 0x7f624abeb9ec <_ZN6WebKit12WebPageProxy24handleSynchronousMessageERN3IPC10ConnectionERKN3WTF6StringERKNS_8UserDataEONS4_17CompletionHandlerIFvOS8_EEE>) at ../../Source/WebKit/Platform/IPC/HandleMessage.h:164 #54 0x00007f624a4d64d4 in _ZN6WebKit12WebPageProxy21didReceiveSyncMessageERN3IPC10ConnectionERNS1_7DecoderERSt10unique_ptrINS1_7EncoderESt14default_deleteIS7_EE (this=0x7f620c2fd800, connection=..., decoder=..., replyEncoder=std::unique_ptr<IPC::Encoder> = {...}) at DerivedSources/WebKit/WebPageProxyMessageReceiver.cpp:2416 #55 0x00007f624aa2bd82 in _ZN3IPC18MessageReceiverMap19dispatchSyncMessageERNS_10ConnectionERNS_7DecoderERSt10unique_ptrINS_7EncoderESt14default_deleteIS6_EE (this=0x7f620c6c7538, connection=..., decoder=..., replyEncoder=std::unique_ptr<IPC::Encoder> = {...}) at ../../Source/WebKit/Platform/IPC/MessageReceiverMap.cpp:140 #56 0x00007f624ab59c78 in _ZN6WebKit21AuxiliaryProcessProxy19dispatchSyncMessageERN3IPC10ConnectionERNS1_7DecoderERSt10unique_ptrINS1_7EncoderESt14default_deleteIS7_EE (this=0x7f620c6c7500, connection=..., decoder=..., replyEncoder=std::unique_ptr<IPC::Encoder> = {...}) at ../../Source/WebKit/UIProcess/AuxiliaryProcessProxy.cpp:201 #57 0x00007f624acc6f55 in _ZN6WebKit15WebProcessProxy21didReceiveSyncMessageERN3IPC10ConnectionERNS1_7DecoderERSt10unique_ptrINS1_7EncoderESt14default_deleteIS7_EE (this=0x7f620c6c7500, connection=..., decoder=..., replyEncoder=std::unique_ptr<IPC::Encoder> = {...}) at ../../Source/WebKit/UIProcess/WebProcessProxy.cpp:734 #58 0x00007f624aa0bb4f in _ZN3IPC10Connection19dispatchSyncMessageERNS_7DecoderE (this=0x7f620c6b9000, decoder=...) at ../../Source/WebKit/Platform/IPC/Connection.cpp:929 #59 0x00007f624aa0c799 in _ZN3IPC10Connection15dispatchMessageESt10unique_ptrINS_7DecoderESt14default_deleteIS2_EE (this=0x7f620c6b9000, message=std::unique_ptr<IPC::Decoder> = {...}) at ../../Source/WebKit/Platform/IPC/Connection.cpp:1075 #60 0x00007f624aa12b08 in _ZN3IPC10Connection16SyncMessageState28ConnectionAndIncomingMessage8dispatchEv (this=0x7f620c6b3300) at ../../Source/WebKit/Platform/IPC/Connection.cpp:119 #61 0x00007f624aa07f83 in _ZN3IPC10Connection16SyncMessageState64dispatchMessagesAndResetDidScheduleDispatchMessagesForConnectionERS0_ (this=0x7f6254799d08 <_ZZN3IPC10Connection16SyncMessageState9singletonEvE16syncMessageState+8>, connection=...) at ../../Source/WebKit/Platform/IPC/Connection.cpp:197 #62 0x00007f624aa07b08 in IPC::Connection::SyncMessageState::<lambda()>::operator()(void) (__closure=0x7f620c6a9140) at ../../Source/WebKit/Platform/IPC/Connection.cpp:159 #63 0x00007f624aa126c6 in WTF::Detail::CallableWrapper<IPC::Connection::SyncMessageState::processIncomingMessage(IPC::Connection&, std::unique_ptr<IPC::Decoder>&)::<lambda()>, void>::call(void) (this=0x7f620c6a9138) at DerivedSources/ForwardingHeaders/wtf/Function.h:52 #64 0x00005569b9f05e6f in _ZNK3WTF8FunctionIFvvEEclEv (this=0x7ffd43c8d7e0) at DerivedSources/ForwardingHeaders/wtf/Function.h:84 #65 0x00007f623cc7dbde in _ZN3WTF7RunLoop11performWorkEv (this=0x7f620c6f6000) at ../../Source/WTF/wtf/RunLoop.cpp:107 #66 0x00007f623ccfccac in WTF::RunLoop::<lambda(gpointer)>::operator()(gpointer) const (__closure=0x0, userData=0x7f620c6f6000) at ../../Source/WTF/wtf/glib/RunLoopGLib.cpp:68 #67 0x00007f623ccfccd0 in WTF::RunLoop::<lambda(gpointer)>::_FUN(gpointer) () at ../../Source/WTF/wtf/glib/RunLoopGLib.cpp:70 #68 0x00007f623ccfcc5e in WTF::<lambda(GSource*, GSourceFunc, gpointer)>::operator()(GSource *, GSourceFunc, gpointer) const (__closure=0x0, source=0x5569bb0593e0, callback=0x7f623ccfccb3 <WTF::RunLoop::<lambda(gpointer)>::_FUN(gpointer)>, userData=0x7f620c6f6000) at ../../Source/WTF/wtf/glib/RunLoopGLib.cpp:45 #69 0x00007f623ccfcc8e in WTF::<lambda(GSource*, GSourceFunc, gpointer)>::_FUN(GSource *, GSourceFunc, gpointer) () at ../../Source/WTF/wtf/glib/RunLoopGLib.cpp:46 #70 0x00007f623e470eef in g_main_context_dispatch () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0 #71 0x00007f623e4712c0 in () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0 #72 0x00007f623e4715f3 in g_main_loop_run () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0 #73 0x00007f623ccfd1ca in _ZN3WTF7RunLoop3runEv () at ../../Source/WTF/wtf/glib/RunLoopGLib.cpp:96 #74 0x00005569b9f4fca1 in _ZN3WTR14TestController16platformRunUntilERbN3WTF7SecondsE (this=0x7ffd43c8e5d0, done=@0x7f620c6ea19b: false, timeout=...) at ../../Tools/WebKitTestRunner/gtk/TestControllerGtk.cpp:80 #75 0x00005569b9ef584b in _ZN3WTR14TestController8runUntilERbN3WTF7SecondsE (this=0x7ffd43c8e5d0, done=@0x7f620c6ea19b: false, timeout=...) at ../../Tools/WebKitTestRunner/TestController.cpp:1810 #76 0x00005569b9f1ff67 in _ZN3WTR14TestInvocation6invokeEv (this=0x7f620c6ea000) at ../../Tools/WebKitTestRunner/TestInvocation.cpp:185 #77 0x00005569b9ef54fa in _ZN3WTR14TestController7runTestEPKc (this=0x7ffd43c8e5d0, inputLine=0x7ffd43c8dd30 "/app/webkit/LayoutTests/editing/pasteboard/4947130.html'--timeout'30000") at ../../Tools/WebKitTestRunner/TestController.cpp:1740 #78 0x00005569b9ef5725 in _ZN3WTR14TestController20runTestingServerLoopEv (this=0x7ffd43c8e5d0) at ../../Tools/WebKitTestRunner/TestController.cpp:1786 #79 0x00005569b9ef577a in _ZN3WTR14TestController3runEv (this=0x7ffd43c8e5d0) at ../../Tools/WebKitTestRunner/TestController.cpp:1794 #80 0x00005569b9eedf66 in _ZN3WTR14TestControllerC2EiPPKc (this=0x7ffd43c8e5d0, argc=2, argv=0x7ffd43c8e958) at ../../Tools/WebKitTestRunner/TestController.cpp:167 #81 0x00005569b9f52f85 in main(int, char**) (argc=2, argv=0x7ffd43c8e958) at ../../Tools/WebKitTestRunner/gtk/main.cpp:45 STDERR: STDERR: (WebKitTestRunner:48): Gdk-CRITICAL **: 15:00:21.752: gdk_cursor_new_from_pixbuf: assertion 'GDK_IS_PIXBUF (pixbuf)' failed Looking at the cursors in libgtk: sh-5.0$ gresource list /usr/lib/x86_64-linux-gnu/libgtk-3.so|grep cursor /org/gtk/libgtk/cursor/dnd-ask.png /org/gtk/libgtk/cursor/dnd-copy.png /org/gtk/libgtk/cursor/dnd-link.png /org/gtk/libgtk/cursor/dnd-move.png /org/gtk/libgtk/cursor/dnd-none.png Doesn't seem to match with what's in the code: https://gitlab.gnome.org/GNOME/gtk/blob/3.24.10/gtk/gtkdnd.c#L281 { GDK_ACTION_ASK, "dnd-ask", NULL, NULL }, { GDK_ACTION_COPY, "copy", NULL, NULL }, { GDK_ACTION_MOVE, "move", NULL, NULL }, { GDK_ACTION_LINK, "alias", NULL, NULL }, { 0 , "no-drop", NULL, NULL },
Attachments
Philippe Normand
Comment 1 2020-01-07 09:39:40 PST
I'm trying to get a more verbose backtrace, installing the FDO Debug SDK. Hold on.
Philippe Normand
Comment 2 2020-01-09 06:50:51 PST
Thread 1 (Thread 0x7fdb1629f9c0 (LWP 48)): #0 0x00007fdb1f5a90b5 in _g_log_abort (breakpoint=1) at ../glib/gmessages.c:554 #1 0x00007fdb1f5aa386 in g_logv (log_domain=0x7fdb1faee017 "Gdk", log_level=G_LOG_LEVEL_CRITICAL, format=<optimized out>, args=args@entry=0x7ffe25537b50) at ../glib/gmessages.c:1371 #2 0x00007fdb1f5aa553 in g_log (log_domain=log_domain@entry=0x7fdb1faee017 "Gdk", log_level=log_level@entry=G_LOG_LEVEL_CRITICAL, format=format@entry=0x7fdb1f5fa4a8 "%s: assertion '%s' failed") at ../glib/gmessages.c:1413 #3 0x00007fdb1f5aad4d in g_return_if_fail_warning (log_domain=log_domain@entry=0x7fdb1faee017 "Gdk", pretty_function=pretty_function@entry=0x7fdb1faeee50 <__func__.41851> "gdk_cursor_new_from_pixbuf", expression=expression@entry=0x7fdb1faeeacf "GDK_IS_PIXBUF (pixbuf)") at ../glib/gmessages.c:2767 #4 0x00007fdb1fa7ed9d in gdk_cursor_new_from_pixbuf (display=display@entry=0x556e05c2a0e0 [GdkX11Display], pixbuf=<optimized out>, x=x@entry=0, y=y@entry=0) at ../../gdk/gdkcursor.c:346 #5 0x00007fdb1ff0b5b1 in gtk_drag_get_cursor (display=0x556e05c2a0e0 [GdkX11Display], action=action@entry=GDK_ACTION_COPY, info=info@entry=0x0, widget=0x556e0619c640 [WebKitWebViewBase]) at ../../gtk/gtkdnd.c:814 #6 0x00007fdb1ff0d6fd in gtk_drag_begin_internal (widget=widget@entry=0x556e0619c640 [WebKitWebViewBase], out_needs_icon=out_needs_icon@entry=0x0, target_list=target_list@entry=0x556e062323c0, actions=actions@entry=(GDK_ACTION_COPY | GDK_ACTION_MOVE | GDK_ACTION_LINK | GDK_ACTION_PRIVATE), button=button@entry=1, event=event@entry=0x556e05c5ad10, x=<optimized out>, y=<optimized out>) at ../../gtk/gtkdnd.c:1739 #7 0x00007fdb1ff0e1ac in gtk_drag_begin (widget=0x556e0619c640 [WebKitWebViewBase], targets=0x556e062323c0, actions=(GDK_ACTION_COPY | GDK_ACTION_MOVE | GDK_ACTION_LINK | GDK_ACTION_PRIVATE), button=1, event=0x556e05c5ad10) at ../../gtk/gtkdnd.c:2027 #8 0x00007fdb2c0c1d0e in _ZN6WebKit18DragAndDropHandler9startDragEON3WTF3RefIN7WebCore13SelectionDataENS1_13DumbPtrTraitsIS4_EEEENS3_13DragOperationEONS1_6RefPtrINS_15ShareableBitmapENS5_ISB_EEEE (this=0x7fdae4ef4e00, selection=..., dragOperation=WebCore::DragOperationEvery, dragImage=...) at ../../Source/WebKit/UIProcess/gtk/DragAndDropHandler.cpp:121 #9 0x00007fdb2bf746d4 in _ZN6WebKit14PageClientImpl9startDragEON3WTF3RefIN7WebCore13SelectionDataENS1_13DumbPtrTraitsIS4_EEEENS3_13DragOperationEONS1_6RefPtrINS_15ShareableBitmapENS5_ISB_EEEE (this=0x7fdae4edf900, selection=..., dragOperation=WebCore::DragOperationEvery, dragImage=...) at ../../Source/WebKit/UIProcess/API/gtk/PageClientImpl.cpp:305 #10 0x00007fdb2bd25e12 in _ZN6WebKit12WebPageProxy9startDragEONS_16WebSelectionDataEmRKNS_15ShareableBitmap6HandleE (this=0x7fdae4afd800, selection=..., dragOperation=4294967295, dragImageHandle=...) at ../../Source/WebKit/UIProcess/WebPageProxy.cpp:2347 #11 0x00007fdb2b64206a in _ZN3IPC22callMemberFunctionImplIN6WebKit12WebPageProxyEMS2_FvONS1_16WebSelectionDataEmRKNS1_15ShareableBitmap6HandleEESt5tupleIJS3_mS6_EEJLm0ELm1ELm2EEEEvPT_T0_OT1_St16integer_sequenceImJXspT2_EEE (object=0x7fdae4afd800, function=(void (WebKit::WebPageProxy::*)(class WebKit::WebPageProxy * const, struct WebKit::WebSelectionData &&, unsigned long, const class WebKit::ShareableBitmap::Handle &)) 0x7fdb2bd25d5a <_ZN6WebKit12WebPageProxy9startDragEONS_16WebSelectionDataEmRKNS_15ShareableBitmap6HandleE>, args=...) at ../../Source/WebKit/Platform/IPC/HandleMessage.h:41 #12 0x00007fdb2b62cbf0 in _ZN3IPC18callMemberFunctionIN6WebKit12WebPageProxyEMS2_FvONS1_16WebSelectionDataEmRKNS1_15ShareableBitmap6HandleEESt5tupleIJS3_mS6_EESt16integer_sequenceImJLm0ELm1ELm2EEEEEvOT1_PT_T0_ (args=..., object=0x7fdae4afd800, function=(void (WebKit::WebPageProxy::*)(class WebKit::WebPageProxy * const, struct WebKit::WebSelectionData &&, unsigned long, const class WebKit::ShareableBitmap::Handle &)) 0x7fdb2bd25d5a <_ZN6WebKit12WebPageProxy9startDragEONS_16WebSelectionDataEmRKNS_15ShareableBitmap6HandleE>) at ../../Source/WebKit/Platform/IPC/HandleMessage.h:47 #13 0x00007fdb2b619fa6 in _ZN3IPC13handleMessageIN8Messages12WebPageProxy9StartDragEN6WebKit12WebPageProxyEMS5_FvONS4_16WebSelectionDataEmRKNS4_15ShareableBitmap6HandleEEEEvRNS_7DecoderEPT0_T1_ (decoder=..., object=0x7fdae4afd800, function=(void (WebKit::WebPageProxy::*)(class WebKit::WebPageProxy * const, struct WebKit::WebSelectionData &&, unsigned long, const class WebKit::ShareableBitmap::Handle &)) 0x7fdb2bd25d5a <_ZN6WebKit12WebPageProxy9startDragEONS_16WebSelectionDataEmRKNS_15ShareableBitmap6HandleE>) at ../../Source/WebKit/Platform/IPC/HandleMessage.h:120 #14 0x00007fdb2b60610c in _ZN6WebKit12WebPageProxy17didReceiveMessageERN3IPC10ConnectionERNS1_7DecoderE (this=0x7fdae4afd800, connection=..., decoder=...) at DerivedSources/WebKit/WebPageProxyMessageReceiver.cpp:1555 #15 0x00007fdb2bb5dc12 in _ZN3IPC18MessageReceiverMap15dispatchMessageERNS_10ConnectionERNS_7DecoderE (this=0x7fdae4ec7538, connection=..., decoder=...) at ../../Source/WebKit/Platform/IPC/MessageReceiverMap.cpp:123 #16 0x00007fdb2bc8bc41 in _ZN6WebKit21AuxiliaryProcessProxy15dispatchMessageERN3IPC10ConnectionERNS1_7DecoderE (this=0x7fdae4ec7500, connection=..., decoder=...) at ../../Source/WebKit/UIProcess/AuxiliaryProcessProxy.cpp:196 #17 0x00007fdb2bdf8e72 in _ZN6WebKit15WebProcessProxy17didReceiveMessageERN3IPC10ConnectionERNS1_7DecoderE (this=0x7fdae4ec7500, connection=..., decoder=...) at ../../Source/WebKit/UIProcess/WebProcessProxy.cpp:718 #18 0x00007fdb2bb3e0cd in _ZN3IPC10Connection15dispatchMessageERNS_7DecoderE (this=0x7fdae4eb9000, decoder=...) at ../../Source/WebKit/Platform/IPC/Connection.cpp:1008 #19 0x00007fdb2bb3e7b9 in _ZN3IPC10Connection15dispatchMessageESt10unique_ptrINS_7DecoderESt14default_deleteIS2_EE (this=0x7fdae4eb9000, message=std::unique_ptr<class IPC::Decoder> = {...}) at ../../Source/WebKit/Platform/IPC/Connection.cpp:1077 #20 0x00007fdb2bb44b08 in _ZN3IPC10Connection16SyncMessageState28ConnectionAndIncomingMessage8dispatchEv (this=0x7fdae4e91a00) at ../../Source/WebKit/Platform/IPC/Connection.cpp:119 #21 0x00007fdb2bb39df8 in _ZN3IPC10Connection16SyncMessageState16dispatchMessagesEv (this=0x7fdb358cbd08 <_ZZN3IPC10Connection16SyncMessageState9singletonEvE16syncMessageState+8>) at ../../Source/WebKit/Platform/IPC/Connection.cpp:179 #22 0x00007fdb2bb3db12 in _ZN3IPC10Connection19dispatchSyncMessageERNS_7DecoderE (this=0x7fdae4eb9000, decoder=...) at ../../Source/WebKit/Platform/IPC/Connection.cpp:926 #23 0x00007fdb2bb3e799 in _ZN3IPC10Connection15dispatchMessageESt10unique_ptrINS_7DecoderESt14default_deleteIS2_EE (this=0x7fdae4eb9000, message=std::unique_ptr<class IPC::Decoder> = {...}) at ../../Source/WebKit/Platform/IPC/Connection.cpp:1075 #24 0x00007fdb2bb44b08 in _ZN3IPC10Connection16SyncMessageState28ConnectionAndIncomingMessage8dispatchEv (this=0x7fdae4eb3700) at ../../Source/WebKit/Platform/IPC/Connection.cpp:119 #25 0x00007fdb2bb39df8 in _ZN3IPC10Connection16SyncMessageState16dispatchMessagesEv (this=0x7fdb358cbd08 <_ZZN3IPC10Connection16SyncMessageState9singletonEvE16syncMessageState+8>) at ../../Source/WebKit/Platform/IPC/Connection.cpp:179 #26 0x00007fdb2bb3c211 in _ZN3IPC10Connection16waitForSyncReplyEmNS_15StringReferenceES1_N3WTF7SecondsENS2_9OptionSetINS_14SendSyncOptionEEE (this=0x7fdae4eb9000, syncRequestID=3, messageReceiverName=..., messageName=..., timeout=..., sendSyncOptions=...) at ../../Source/WebKit/Platform/IPC/Connection.cpp:637 #27 0x00007fdb2bb3c05c in _ZN3IPC10Connection15sendSyncMessageEmSt10unique_ptrINS_7EncoderESt14default_deleteIS2_EEN3WTF7SecondsENS6_9OptionSetINS_14SendSyncOptionEEE (this=0x7fdae4eb9000, syncRequestID=3, encoder=std::unique_ptr<class IPC::Encoder> = {...}, timeout=..., sendSyncOptions=...) at ../../Source/WebKit/Platform/IPC/Connection.cpp:610 #28 0x00007fdb2bb3b531 in _ZN3IPC10Connection11sendMessageESt10unique_ptrINS_7EncoderESt14default_deleteIS2_EEN3WTF9OptionSetINS_10SendOptionEEE (this=0x7fdae4eb9000, encoder=std::unique_ptr<class IPC::Encoder> = {...}, sendOptions=...) at ../../Source/WebKit/Platform/IPC/Connection.cpp:461 #29 0x00007fdb2bc8ba41 in _ZN6WebKit21AuxiliaryProcessProxy11sendMessageESt10unique_ptrIN3IPC7EncoderESt14default_deleteIS3_EEN3WTF9OptionSetINS2_10SendOptionEEEONS7_8OptionalISt4pairINS7_17CompletionHandlerIFvPNS2_7DecoderEEEEmEEE (this=0x7fdae4ec7500, encoder=std::unique_ptr<class IPC::Encoder> = {...}, sendOptions=..., asyncReplyInfo=...) at ../../Source/WebKit/UIProcess/AuxiliaryProcessProxy.cpp:157 #30 0x00007fdb2bd3af1c in _ZN6WebKit12WebPageProxy11sendMessageESt10unique_ptrIN3IPC7EncoderESt14default_deleteIS3_EEN3WTF9OptionSetINS2_10SendOptionEEEONS7_8OptionalISt4pairINS7_17CompletionHandlerIFvPNS2_7DecoderEEEEmEEE (this=0x7fdae4afd800, encoder=std::unique_ptr<class IPC::Encoder> = {...}, sendOptions=..., asyncReplyInfo=...) at ../../Source/WebKit/UIProcess/WebPageProxy.cpp:6122 #31 0x00007fdb2bd86e87 in _ZN3IPC13MessageSender4sendIN8Messages7WebPage10MouseEventEEEbRKT_mN3WTF9OptionSetINS_10SendOptionEEE (this=0x7fdae4afd830, message=..., destinationID=7, sendOptions=...) at ../../Source/WebKit/Platform/IPC/MessageSender.h:49 #32 0x00007fdb2bd6ad07 in _ZN3IPC13MessageSender4sendIN8Messages7WebPage10MouseEventEEEbRKT_N3WTF9OptionSetINS_10SendOptionEEE (this=0x7fdae4afd830, message=..., sendOptions=...) at ../../Source/WebKit/Platform/IPC/MessageSender.h:39 #33 0x00007fdb2bd26549 in _ZN6WebKit12WebPageProxy27processNextQueuedMouseEventEv (this=0x7fdae4afd800) at ../../Source/WebKit/UIProcess/WebPageProxy.cpp:2474 #34 0x00007fdb2bd2636d in _ZN6WebKit12WebPageProxy16handleMouseEventERKNS_19NativeWebMouseEventE (this=0x7fdae4afd800, event=...) at ../../Source/WebKit/UIProcess/WebPageProxy.cpp:2450 #35 0x00007fdb2bf983d9 in webkitWebViewBaseHandleMouseEvent(WebKitWebViewBase*, GdkEvent*) (webViewBase=0x556e0619c640 [WebKitWebViewBase], event=0x556e05c5adb0) at ../../Source/WebKit/UIProcess/API/gtk/WebKitWebViewBase.cpp:879 #36 0x00007fdb2bf98969 in webkitWebViewBaseMotionNotifyEvent(GtkWidget*, GdkEventMotion*) (widget=0x556e0619c640 [WebKitWebViewBase], event=0x556e05c5adb0) at ../../Source/WebKit/UIProcess/API/gtk/WebKitWebViewBase.cpp:988 #37 0x00007fdb1ff3373f in _gtk_marshal_BOOLEAN__BOXEDv (closure=0x556e05c6c320, return_value=0x7ffe255396a0, instance=<optimized out>, args=<optimized out>, marshal_data=<optimized out>, n_params=<optimized out>, param_types=0x556e05c6c350) at gtkmarshalers.c:129 #38 0x00007fdb1f68d996 in _g_closure_invoke_va (closure=0x556e05c6c320, return_value=0x7ffe255396a0, instance=0x556e0619c640, args=0x7ffe25539770, n_params=1, param_types=0x556e05c6c350) at ../gobject/gclosure.c:873 #39 0x00007fdb1f6a9dbb in g_signal_emit_valist (instance=0x556e0619c640, signal_id=<optimized out>, detail=<optimized out>, var_args=var_args@entry=0x7ffe25539770) at ../gobject/gsignal.c:3300 #40 0x00007fdb1f6aa9a3 in g_signal_emit (instance=instance@entry=0x556e0619c640, signal_id=<optimized out>, detail=detail@entry=0) at ../gobject/gsignal.c:3447 #41 0x00007fdb1fede3b3 in gtk_widget_event_internal (event=0x556e05c5adb0, widget=0x556e0619c640 [WebKitWebViewBase]) at ../../gtk/gtkwidget.c:7789 #42 0x00007fdb1fede3b3 in gtk_widget_event_internal (widget=0x556e0619c640 [WebKitWebViewBase], event=0x556e05c5adb0) at ../../gtk/gtkwidget.c:7658 #43 0x00007fdb1fd9abd8 in propagate_event_up (topmost=<optimized out>, event=<optimized out>, widget=0x556e0619c640 [WebKitWebViewBase]) at ../../gtk/gtkmain.c:2582 #44 0x00007fdb1fd9abd8 in propagate_event (widget=<optimized out>, event=0x556e05c5adb0, captured=<optimized out>, topmost=0x0) at ../../gtk/gtkmain.c:2685 #45 0x00007fdb1fd9cdeb in gtk_main_do_event (event=0x556e05c5adb0) at ../../gtk/gtkmain.c:1915 #46 0x00007fdb1fd9cdeb in gtk_main_do_event (event=<optimized out>) at ../../gtk/gtkmain.c:1685 #47 0x0000556e0425a276 in _ZN3WTR16EventSenderProxy13dispatchEventEP9_GdkEvent (this=0x7fdae4eec0b0, event=0x556e05c5adb0) at ../../Tools/WebKitTestRunner/gtk/EventSenderProxyGtk.cpp:160 #48 0x0000556e0425a2f0 in _ZN3WTR16EventSenderProxy17replaySavedEventsEv (this=0x7fdae4eec0b0) at ../../Tools/WebKitTestRunner/gtk/EventSenderProxyGtk.cpp:171 #49 0x0000556e0425a37c in _ZN3WTR16EventSenderProxy16sendOrQueueEventEP9_GdkEvent (this=0x7fdae4eec0b0, event=0x556e05c5adb0) at ../../Tools/WebKitTestRunner/gtk/EventSenderProxyGtk.cpp:183 #50 0x0000556e0425aed2 in _ZN3WTR16EventSenderProxy11mouseMoveToEdd (this=0x7fdae4eec0b0, x=60, y=111) at ../../Tools/WebKitTestRunner/gtk/EventSenderProxyGtk.cpp:386 #51 0x0000556e04207ba2 in _ZN3WTR14TestController46didReceiveSynchronousMessageFromInjectedBundleEPK14OpaqueWKStringPKvPK23OpaqueWKMessageListener (this=0x7ffe2553b240, messageName=0x7fdae4eaeae0, messageBody=0x7fdae4eebdc8, listener=0x7fdae4ebfc80) at ../../Tools/WebKitTestRunner/TestController.cpp:2031 #52 0x0000556e0420698c in _ZN3WTR14TestController62didReceiveSynchronousPageMessageFromInjectedBundleWithListenerEPK12OpaqueWKPagePK14OpaqueWKStringPKvPK23OpaqueWKMessageListenerS8_ (page=0x7fdae4afd800, messageName=0x7fdae4eaeae0, messageBody=0x7fdae4eebdc8, listener=0x7fdae4ebfc80, clientInfo=0x7ffe2553b240) at ../../Tools/WebKitTestRunner/TestController.cpp:1839 #53 0x00007fdb2bd1a1b1 in _ZN6WebKit27WebPageInjectedBundleClient46didReceiveSynchronousMessageFromInjectedBundleEPNS_12WebPageProxyERKN3WTF6StringEPN3API6ObjectEONS3_17CompletionHandlerIFvNS3_6RefPtrIS8_NS3_13DumbPtrTraitsIS8_EEEEEEE (this=0x7fdae4efa5c8, page=0x7fdae4afd800, messageName="EventSender", messageBody=0x7fdae4eebdc8, completionHandler=...) at ../../Source/WebKit/UIProcess/WebPageInjectedBundleClient.cpp:58 #54 0x00007fdb2bd1db75 in _ZN6WebKit12WebPageProxy24handleSynchronousMessageERN3IPC10ConnectionERKN3WTF6StringERKNS_8UserDataEONS4_17CompletionHandlerIFvOS8_EEE (this=0x7fdae4afd800, connection=..., messageName="EventSender", messageBody=..., completionHandler=...) at ../../Source/WebKit/UIProcess/WebPageProxy.cpp:735 #55 0x00007fdb2b64b284 in _ZN3IPC22callMemberFunctionImplIN6WebKit12WebPageProxyEMS2_FvRNS_10ConnectionERKN3WTF6StringERKNS1_8UserDataEONS5_17CompletionHandlerIFvOS9_EEEEFvSB_ESt5tupleIJS6_S9_EEJLm0ELm1EEEEvS4_PT_T0_ONSC_IT1_EEOT2_St16integer_sequenceImJXspT3_EEE (connection=..., object=0x7fdae4afd800, function=(void (WebKit::WebPageProxy::*)(class WebKit::WebPageProxy * const, class IPC::Connection &, const class WTF::String &, const class WebKit::UserData &, class WTF::CompletionHandler<void(WebKit::UserData&&)> &&)) 0x7fdb2bd1d9ec <_ZN6WebKit12WebPageProxy24handleSynchronousMessageERN3IPC10ConnectionERKN3WTF6StringERKNS_8UserDataEONS4_17CompletionHandlerIFvOS8_EEE>, completionHandler=..., args=...) at ../../Source/WebKit/Platform/IPC/HandleMessage.h:69 #56 0x00007fdb2b631cd9 in _ZN3IPC18callMemberFunctionIN6WebKit12WebPageProxyEMS2_FvRNS_10ConnectionERKN3WTF6StringERKNS1_8UserDataEONS5_17CompletionHandlerIFvOS9_EEEEFvSB_ESt5tupleIJS6_S9_EESt16integer_sequenceImJLm0ELm1EEEEEvS4_OT2_ONSC_IT1_EEPT_T0_ (connection=..., args=..., completionHandler=..., object=0x7fdae4afd800, function=(void (WebKit::WebPageProxy::*)(class WebKit::WebPageProxy * const, class IPC::Connection &, const class WTF::String &, const class WebKit::UserData &, class WTF::CompletionHandler<void(WebKit::UserData&&)> &&)) 0x7fdb2bd1d9ec <_ZN6WebKit12WebPageProxy24handleSynchronousMessageERN3IPC10ConnectionERKN3WTF6StringERKNS_8UserDataEONS4_17CompletionHandlerIFvOS8_EEE>) at ../../Source/WebKit/Platform/IPC/HandleMessage.h:75 #57 0x00007fdb2b621167 in _ZN3IPC39handleMessageSynchronousWantsConnectionIN8Messages12WebPageProxy24HandleSynchronousMessageEN6WebKit12WebPageProxyEMS5_FvRNS_10ConnectionERKN3WTF6StringERKNS4_8UserDataEONS8_17CompletionHandlerIFvOSC_EEEEEEvS7_RNS_7DecoderERSt10unique_ptrINS_7EncoderESt14default_deleteISP_EEPT0_T1_ (connection=..., decoder=..., replyEncoder=std::unique_ptr<class IPC::Encoder> = {...}, object=0x7fdae4afd800, function=(void (WebKit::WebPageProxy::*)(class WebKit::WebPageProxy * const, class IPC::Connection &, const class WTF::String &, const class WebKit::UserData &, class WTF::CompletionHandler<void(WebKit::UserData&&)> &&)) 0x7fdb2bd1d9ec <_ZN6WebKit12WebPageProxy24handleSynchronousMessageERN3IPC10ConnectionERKN3WTF6StringERKNS_8UserDataEONS4_17CompletionHandlerIFvOS8_EEE>) at ../../Source/WebKit/Platform/IPC/HandleMessage.h:164 #58 0x00007fdb2b6084d4 in _ZN6WebKit12WebPageProxy21didReceiveSyncMessageERN3IPC10ConnectionERNS1_7DecoderERSt10unique_ptrINS1_7EncoderESt14default_deleteIS7_EE (this=0x7fdae4afd800, connection=..., decoder=..., replyEncoder=std::unique_ptr<class IPC::Encoder> = {...}) at DerivedSources/WebKit/WebPageProxyMessageReceiver.cpp:2416 #59 0x00007fdb2bb5dd82 in _ZN3IPC18MessageReceiverMap19dispatchSyncMessageERNS_10ConnectionERNS_7DecoderERSt10unique_ptrINS_7EncoderESt14default_deleteIS6_EE (this=0x7fdae4ec7538, connection=..., decoder=..., replyEncoder=std::unique_ptr<class IPC::Encoder> = {...}) at ../../Source/WebKit/Platform/IPC/MessageReceiverMap.cpp:140 #60 0x00007fdb2bc8bc78 in _ZN6WebKit21AuxiliaryProcessProxy19dispatchSyncMessageERN3IPC10ConnectionERNS1_7DecoderERSt10unique_ptrINS1_7EncoderESt14default_deleteIS7_EE (this=0x7fdae4ec7500, connection=..., decoder=..., replyEncoder=std::unique_ptr<class IPC::Encoder> = {...}) at ../../Source/WebKit/UIProcess/AuxiliaryProcessProxy.cpp:201 #61 0x00007fdb2bdf8f55 in _ZN6WebKit15WebProcessProxy21didReceiveSyncMessageERN3IPC10ConnectionERNS1_7DecoderERSt10unique_ptrINS1_7EncoderESt14default_deleteIS7_EE (this=0x7fdae4ec7500, connection=..., decoder=..., replyEncoder=std::unique_ptr<class IPC::Encoder> = {...}) at ../../Source/WebKit/UIProcess/WebProcessProxy.cpp:734 #62 0x00007fdb2bb3db4f in _ZN3IPC10Connection19dispatchSyncMessageERNS_7DecoderE (this=0x7fdae4eb9000, decoder=...) at ../../Source/WebKit/Platform/IPC/Connection.cpp:929 #63 0x00007fdb2bb3e799 in _ZN3IPC10Connection15dispatchMessageESt10unique_ptrINS_7DecoderESt14default_deleteIS2_EE (this=0x7fdae4eb9000, message=std::unique_ptr<class IPC::Decoder> = {...}) at ../../Source/WebKit/Platform/IPC/Connection.cpp:1075 #64 0x00007fdb2bb44b08 in _ZN3IPC10Connection16SyncMessageState28ConnectionAndIncomingMessage8dispatchEv (this=0x7fdae4eb3300) at ../../Source/WebKit/Platform/IPC/Connection.cpp:119 #65 0x00007fdb2bb39f83 in _ZN3IPC10Connection16SyncMessageState64dispatchMessagesAndResetDidScheduleDispatchMessagesForConnectionERS0_ (this=0x7fdb358cbd08 <_ZZN3IPC10Connection16SyncMessageState9singletonEvE16syncMessageState+8>, connection=...) at ../../Source/WebKit/Platform/IPC/Connection.cpp:197 #66 0x00007fdb2bb39b08 in IPC::Connection::SyncMessageState::<lambda()>::operator()(void) (__closure=0x7fdae4ea9140) at ../../Source/WebKit/Platform/IPC/Connection.cpp:159 #67 0x00007fdb2bb446c6 in WTF::Detail::CallableWrapper<IPC::Connection::SyncMessageState::processIncomingMessage(IPC::Connection&, std::unique_ptr<IPC::Decoder>&)::<lambda()>, void>::call(void) (this=0x7fdae4ea9138) at DerivedSources/ForwardingHeaders/wtf/Function.h:52 #68 0x0000556e04216e6f in _ZNK3WTF8FunctionIFvvEEclEv (this=0x7ffe2553a450) at DerivedSources/ForwardingHeaders/wtf/Function.h:84 #69 0x00007fdb1ddafbde in _ZN3WTF7RunLoop11performWorkEv (this=0x7fdae4ef6000) at ../../Source/WTF/wtf/RunLoop.cpp:107 #70 0x00007fdb1de2ecac in WTF::RunLoop::<lambda(gpointer)>::operator()(gpointer) const (__closure=0x0, userData=0x7fdae4ef6000) at ../../Source/WTF/wtf/glib/RunLoopGLib.cpp:68 #71 0x00007fdb1de2ecd0 in WTF::RunLoop::<lambda(gpointer)>::_FUN(gpointer) () at ../../Source/WTF/wtf/glib/RunLoopGLib.cpp:70 #72 0x00007fdb1de2ec5e in WTF::<lambda(GSource*, GSourceFunc, gpointer)>::operator()(GSource *, GSourceFunc, gpointer) const (__closure=0x0, source=0x556e06198390, callback=0x7fdb1de2ecb3 <WTF::RunLoop::<lambda(gpointer)>::_FUN(gpointer)>, userData=0x7fdae4ef6000) at ../../Source/WTF/wtf/glib/RunLoopGLib.cpp:45 #73 0x00007fdb1de2ec8e in WTF::<lambda(GSource*, GSourceFunc, gpointer)>::_FUN(GSource *, GSourceFunc, gpointer) () at ../../Source/WTF/wtf/glib/RunLoopGLib.cpp:46 #74 0x00007fdb1f5a2eef in g_main_dispatch (context=0x556e05c60b70) at ../glib/gmain.c:3189 #75 0x00007fdb1f5a2eef in g_main_context_dispatch (context=context@entry=0x556e05c60b70) at ../glib/gmain.c:3854 #76 0x00007fdb1f5a32c0 in g_main_context_iterate (context=0x556e05c60b70, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/gmain.c:3927 #77 0x00007fdb1f5a35f3 in g_main_loop_run (loop=0x556e06198370) at ../glib/gmain.c:4123 #78 0x00007fdb1de2f1ca in _ZN3WTF7RunLoop3runEv () at ../../Source/WTF/wtf/glib/RunLoopGLib.cpp:96 #79 0x0000556e04260ca1 in _ZN3WTR14TestController16platformRunUntilERbN3WTF7SecondsE (this=0x7ffe2553b240, done=@0x7fdae4eea19b: false, timeout=...) at ../../Tools/WebKitTestRunner/gtk/TestControllerGtk.cpp:80 #80 0x0000556e0420684b in _ZN3WTR14TestController8runUntilERbN3WTF7SecondsE (this=0x7ffe2553b240, done=@0x7fdae4eea19b: false, timeout=...) at ../../Tools/WebKitTestRunner/TestController.cpp:1810 #81 0x0000556e04230f67 in _ZN3WTR14TestInvocation6invokeEv (this=0x7fdae4eea000) at ../../Tools/WebKitTestRunner/TestInvocation.cpp:185 #82 0x0000556e042064fa in _ZN3WTR14TestController7runTestEPKc (this=0x7ffe2553b240, inputLine=0x7ffe2553a9a0 "/app/webkit/LayoutTests/editing/pasteboard/4947130.html'--timeout'30000") at ../../Tools/WebKitTestRunner/TestController.cpp:1740 #83 0x0000556e04206725 in _ZN3WTR14TestController20runTestingServerLoopEv (this=0x7ffe2553b240) at ../../Tools/WebKitTestRunner/TestController.cpp:1786 #84 0x0000556e0420677a in _ZN3WTR14TestController3runEv (this=0x7ffe2553b240) at ../../Tools/WebKitTestRunner/TestController.cpp:1794 #85 0x0000556e041fef66 in _ZN3WTR14TestControllerC2EiPPKc (this=0x7ffe2553b240, argc=2, argv=0x7ffe2553b5c8) at ../../Tools/WebKitTestRunner/TestController.cpp:167 #86 0x0000556e04263f85 in main(int, char**) (argc=2, argv=0x7ffe2553b5c8) at ../../Tools/WebKitTestRunner/gtk/main.cpp:45
Carlos Garcia Campos
Comment 3 2020-01-09 07:04:41 PST
I don't think this is a WebKit bug... The problem is that for some reason GTK is failing to create a cursor. It first fails with gdk_cursor_new_from_name() which is called with "copy", so it should always work, it's one of the recommended set. Then gdk_pixbuf_new_from_stream() is failing too in ensure_drag_cursor_pixbuf (or g_resources_open_stream is returning null, we would need to debug it to know it for sure). I would patch GTK to handle errors of both g_resources_open_stream() and gdk_pixbuf_new_from_stream() to see why they are failing. Is this Wayland or X11?
Carlos Garcia Campos
Comment 4 2020-01-09 07:11:21 PST
(In reply to Philippe Normand from comment #0) [...] > > Looking at the cursors in libgtk: > sh-5.0$ gresource list /usr/lib/x86_64-linux-gnu/libgtk-3.so|grep cursor > /org/gtk/libgtk/cursor/dnd-ask.png > /org/gtk/libgtk/cursor/dnd-copy.png > /org/gtk/libgtk/cursor/dnd-link.png > /org/gtk/libgtk/cursor/dnd-move.png > /org/gtk/libgtk/cursor/dnd-none.png > > Doesn't seem to match with what's in the code: > https://gitlab.gnome.org/GNOME/gtk/blob/3.24.10/gtk/gtkdnd.c#L281 > { GDK_ACTION_ASK, "dnd-ask", NULL, NULL }, > { GDK_ACTION_COPY, "copy", NULL, NULL }, > { GDK_ACTION_MOVE, "move", NULL, NULL }, > { GDK_ACTION_LINK, "alias", NULL, NULL }, > { 0 , "no-drop", NULL, NULL }, Ah, good catch! This is probably the reason why ensure_drag_cursor_pixbuf() si failing then. I guess nobody noticed before because gdk_cursor_new_from_name() always works with "copy". So, I think there are actually two separate issues: 1.- gdk_cursor_new_from_name() is failing 2.- The cursor names don't match the resources names. It should be easy to fix 2. we could do: char *path = g_strconcat ("/org/gtk/libgtk/cursor/dnd-", drag_cursors[i].name, ".png", NULL); and rename dnd-ask to ask. In any case, not a WebKit bug for sure.
Philippe Normand
Comment 5 2020-01-09 07:13:24 PST
X11
Philippe Normand
Comment 6 2020-01-12 03:05:36 PST
Updating to 3.24.13 fixed the problem, I suppose gdk_cursor_new_from_name() now succeeds, somehow :)
Note You need to log in before you can comment on or make changes to this bug.