Crash abusing gtk_search_bar_get_search_mode()
Here's a random UI process crash that I don't know how to reproduce. It seems we have attempted to use some bogus memory instead of a real GtkSearchBar. Oh, and Ephy Tech Preview's debuginfo is broken again, so the all-important frame 1 is unfortunately missing....
Program terminated with signal SIGSEGV, Segmentation fault.
#0 0x00007fe83a017dcd in gtk_search_bar_get_search_mode (bar=0xaaaaaaaaaaaaaaaa) at ../gtk/gtksearchbar.c:453
453 g_return_val_if_fail (GTK_IS_SEARCH_BAR (bar), FALSE);
[Current thread is 1 (Thread 0x7fe82f298c00 (LWP 2))]
(gdb) bt
#0 0x00007fe83a017dcd in gtk_search_bar_get_search_mode (bar=0xaaaaaaaaaaaaaaaa) at ../gtk/gtksearchbar.c:453
#1 0x00007fe83ac04d45 in () at /app/lib/epiphany/libephymain.so
#5 0x00007fe83aab86b3 in <emit signal ??? on instance 0x55b54df113b0 [EphyWebView]>
(instance=<optimized out>, signal_id=<optimized out>, detail=<optimized out>) at ../gobject/gsignal.c:3612
#2 0x00007fe83aa9d3e2 in g_closure_invoke
(closure=0x55b54dff6460, return_value=return_value@entry=0x0, n_param_values=2, param_values=param_values@entry=0x7fff2bfea6a0, invocation_hint=invocation_hint@entry=0x7fff2bfea620) at ../gobject/gclosure.c:832
#3 0x00007fe83aab1578 in signal_emit_unlocked_R
(node=node@entry=0x55b54cb95280, detail=detail@entry=0, instance=instance@entry=0x55b54df113b0, emission_return=emission_return@entry=0x0, instance_and_params=instance_and_params@entry=0x7fff2bfea6a0) at ../gobject/gsignal.c:3802
#4 0x00007fe83aab84e5 in g_signal_emit_valist
(instance=<optimized out>, signal_id=<optimized out>, detail=<optimized out>, var_args=var_args@entry=0x7fff2bfea840) at ../gobject/gsignal.c:3555
#6 0x00007fe835ccdd62 in WebKit::WebPageProxy::didStartProvisionalLoadForFrameShared(WTF::Ref<WebKit::WebProcessProxy, WTF::RawPtrTraits<WebKit::WebProcessProxy> >&&, WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WebKit::FrameInfoData&&, WebCore::ResourceRequest&&, unsigned long, WTF::URL&&, WTF::URL&&, WebKit::UserData const&)
(this=0x7fe824042400, process=..., frameID=..., frameInfo=<optimized out>, request=<optimized out>, navigationID=<optimized out>, url=<optimized out>, unreachableURL=<optimized out>, userData=<optimized out>)
at /usr/lib/debug/source/sdk/webkitgtk-6.0.bst/Source/WebKit/UIProcess/WebPageProxy.cpp:4903
#7 0x00007fe835ccdddd in WebKit::WebPageProxy::didStartProvisionalLoadForFrame(WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WebKit::FrameInfoData&&, WebCore::ResourceRequest&&, unsigned long, WTF::URL&&, WTF::URL&&, WebKit::UserData const&)
(this=<optimized out>, frameID=..., frameInfo=<optimized out>, request=<optimized out>, navigationID=<optimized out>, url=<optimized out>, unreachableURL=<optimized out>, userData=<optimized out>)
at /usr/lib/debug/source/sdk/webkitgtk-6.0.bst/Source/WebKit/UIProcess/WebPageProxy.cpp:4858
#8 0x00007fe8359aef9b in _ZZN3IPC18callMemberFunctionIN6WebKit12WebPageProxyES2_FvN7WebCore16ProcessQualifiedIN3WTF16ObjectIdentifierINS3_19FrameIdentifierTypeEEEEEONS1_13FrameInfoDataEONS3_15ResourceRequestEmONS5_3URLESF_RKNS1_8UserDataEESt5tupleIJS9_SA_SC_mSE_SE_SG_EEEEvPT_MT0_T1_OT2_ENKUlDpOT_E_clIJS9_SA_SC_mSE_SE_SG_EEEDaSV_
(__closure=<optimized out>)
at /usr/lib/debug/source/sdk/webkitgtk-6.0.bst/Source/WebKit/Platform/IPC/HandleMessage.h:133
#9 _ZSt13__invoke_implIvZN3IPC18callMemberFunctionIN6WebKit12WebPageProxyES3_FvN7WebCore16ProcessQualifiedIN3WTF16ObjectIdentifierINS4_19FrameIdentifierTypeEEEEEONS2_13FrameInfoDataEONS4_15ResourceRequestEmONS6_3URLESG_RKNS2_8UserDataEESt5tupleIJSA_SB_SD_mSF_SF_SH_EEEEvPT_MT0_T1_OT2_EUlDpOT_E_JSA_SB_SD_mSF_SF_SH_EESN_St14__invoke_otherOSP_DpOT1_
(__f=<optimized out>) at /usr/include/c++/12.1.0/bits/invoke.h:61
#10 _ZSt8__invokeIZN3IPC18callMemberFunctionIN6WebKit12WebPageProxyES3_FvN7WebCore16ProcessQualifiedIN3WTF16ObjectIdentifierINS4_19FrameIdentifierTypeEEEEEONS2_13FrameInfoDataEONS4_15ResourceRequestEmONS6_3URLESG_RKNS2_8UserDataEESt5tupleIJSA_SB_SD_mSF_SF_SH_EEEEvPT_MT0_T1_OT2_EUlDpOT_E_JSA_SB_SD_mSF_SF_SH_EENSt15__invoke_resultISN_JDpT0_EE4typeEOSN_DpOSZ_ (__fn=<optimized out>) at /usr/include/c++/12.1.0/bits/invoke.h:96
#11 _ZSt12__apply_implIZN3IPC18callMemberFunctionIN6WebKit12WebPageProxyES3_FvN7WebCore16ProcessQualifiedIN3WTF16ObjectIdentifierINS4_19FrameIdentifierTypeEEEEEONS2_13FrameInfoDataEONS4_15ResourceRequestEmONS6_3URLESG_RKNS2_8UserDataEESt5tupleIJSA_SB_SD_mSF_SF_SH_EEEEvPT_MT0_T1_OT2_EUlDpOT_E_SM_JLm0ELm1ELm2ELm3ELm4ELm5ELm6EEEDcOSN_OSP_St16integer_sequenceImJXspT1_EEE (__f=<optimized out>, __t=...) at /usr/include/c++/12.1.0/tuple:1852
#12 _ZSt5applyIZN3IPC18callMemberFunctionIN6WebKit12WebPageProxyES3_FvN7WebCore16ProcessQualifiedIN3WTF16ObjectIdentifierINS4_19FrameIdentifierTypeEEEEEONS2_13FrameInfoDataEONS4_15ResourceRequestEmONS6_3URLESG_RKNS2_8UserDataEESt5tupleIJSA_SB_SD_mSF_SF_SH_EEEEvPT_MT0_T1_OT2_EUlDpOT_E_SM_EDcOSN_OSP_ (__t=..., __f=<optimized out>)
at /usr/include/c++/12.1.0/tuple:1863
#13 IPC::callMemberFunction<WebKit::WebPageProxy, WebKit::WebPageProxy, void (WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WebKit::FrameInfoData&&, WebCore::ResourceRequest&&, unsigned long, WTF::URL&&, WTF::URL&&, WebKit::UserData const&), std::tuple<WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WebKit::FrameInfoData, WebCore::ResourceRequest, unsigned long, WTF::URL, WTF::URL, WebKit::UserData> >(WebKit::WebPageProxy*, void (WebKit::WebPageProxy::*)(WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WebKit::FrameInfoData&&, WebCore::ResourceRequest&&, unsigned long, WTF::URL&&, WTF::URL&&, WebKit::UserData const&), std::tuple<WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WebKit::--Type <RET> for more, q to quit, c to continue without paging--c
FrameInfoData, WebCore::ResourceRequest, unsigned long, WTF::URL, WTF::URL, WebKit::UserData>&&) (tuple=..., function=<optimized out>, object=<optimized out>) at /usr/lib/debug/source/sdk/webkitgtk-6.0.bst/Source/WebKit/Platform/IPC/HandleMessage.h:131
#14 IPC::handleMessage<Messages::WebPageProxy::DidStartProvisionalLoadForFrame, WebKit::WebPageProxy, WebKit::WebPageProxy, void (WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WebKit::FrameInfoData&&, WebCore::ResourceRequest&&, unsigned long, WTF::URL&&, WTF::URL&&, WebKit::UserData const&)>(IPC::Connection&, IPC::Decoder&, WebKit::WebPageProxy*, void (WebKit::WebPageProxy::*)(WebCore::ProcessQualified<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WebKit::FrameInfoData&&, WebCore::ResourceRequest&&, unsigned long, WTF::URL&&, WTF::URL&&, WebKit::UserData const&)) (decoder=..., object=object@entry=0x7fe824042400, function=<optimized out>, connection=<optimized out>) at /usr/lib/debug/source/sdk/webkitgtk-6.0.bst/Source/WebKit/Platform/IPC/HandleMessage.h:227
#15 0x00007fe8359b5234 in WebKit::WebPageProxy::didReceiveMessage(IPC::Connection&, IPC::Decoder&) (this=0x7fe824042400, connection=<optimized out>, decoder=...) at /usr/lib/debug/source/sdk/webkitgtk-6.0.bst/_builddir/DerivedSources/WebKit/WebPageProxyMessageReceiver.cpp:417
#16 0x00007fe835c07839 in IPC::MessageReceiverMap::dispatchMessage(IPC::Connection&, IPC::Decoder&) (this=this@entry=0x7fe7a25641c8, connection=..., decoder=...) at /usr/lib/debug/source/sdk/webkitgtk-6.0.bst/Source/WebKit/Platform/IPC/MessageReceiverMap.cpp:129
#17 0x00007fe835c6b0a0 in WebKit::AuxiliaryProcessProxy::dispatchMessage(IPC::Connection&, IPC::Decoder&) (this=this@entry=0x7fe7a2564130, connection=..., decoder=...) at /usr/lib/debug/source/sdk/webkitgtk-6.0.bst/Source/WebKit/UIProcess/AuxiliaryProcessProxy.cpp:274
#18 0x00007fe835d24ddf in WebKit::WebProcessProxy::didReceiveMessage(IPC::Connection&, IPC::Decoder&) (this=0x7fe7a2564130, connection=..., decoder=...) at /usr/lib/debug/source/sdk/webkitgtk-6.0.bst/Source/WebKit/UIProcess/WebProcessProxy.cpp:966
#19 0x00007fe835bffe0a in IPC::Connection::dispatchMessage(std::unique_ptr<IPC::Decoder, std::default_delete<IPC::Decoder> >) (this=0x7fe8260881a0, message=std::unique_ptr<IPC::Decoder> = {...}) at /usr/lib/debug/source/sdk/webkitgtk-6.0.bst/Source/WebKit/Platform/IPC/Connection.cpp:1241
#20 0x00007fe835c01ac9 in IPC::Connection::dispatchIncomingMessages() (this=0x7fe8260881a0) at /usr/include/c++/12.1.0/bits/unique_ptr.h:189
#21 0x00007fe834c6c3e5 in WTF::Function<void ()>::operator()() const (this=<synthetic pointer>) at /usr/lib/debug/source/sdk/webkitgtk-6.0.bst/Source/WTF/wtf/Function.h:79
#22 WTF::RunLoop::performWork() (this=0x7fe8260100e0) at /usr/lib/debug/source/sdk/webkitgtk-6.0.bst/Source/WTF/wtf/RunLoop.cpp:147
#23 0x00007fe834ccdc8d in operator() (userData=<optimized out>, __closure=0x0) at /usr/lib/debug/source/sdk/webkitgtk-6.0.bst/Source/WTF/wtf/glib/RunLoopGLib.cpp:80
#24 _FUN(gpointer) () at /usr/lib/debug/source/sdk/webkitgtk-6.0.bst/Source/WTF/wtf/glib/RunLoopGLib.cpp:82
#25 0x00007fe834cce70d in operator() (__closure=0x0, userData=0x7fe8260100e0, callback=0x7fe834ccdc80 <_FUN(gpointer)>, source=0x55b54bfa5cf0) at /usr/lib/debug/source/sdk/webkitgtk-6.0.bst/Source/WTF/wtf/glib/RunLoopGLib.cpp:53
#26 _FUN(GSource*, GSourceFunc, gpointer) () at /usr/lib/debug/source/sdk/webkitgtk-6.0.bst/Source/WTF/wtf/glib/RunLoopGLib.cpp:56
#27 0x00007fe83a99e1f1 in g_main_dispatch (context=<optimized out>) at ../glib/gmain.c:3454
#28 g_main_context_dispatch (context=<optimized out>) at ../glib/gmain.c:4172
#29 0x00007fe83a99e748 in g_main_context_iterate (context=context@entry=0x55b54bf70180, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/gmain.c:4248
#30 0x00007fe83a99e7e3 in g_main_context_iteration (context=context@entry=0x55b54bf70180, may_block=may_block@entry=1) at ../glib/gmain.c:4313
#31 0x00007fe83a845a4d in g_application_run (application=0x55b54bfa3390 [EphyShell], argc=<optimized out>, argv=<optimized out>) at ../gio/gapplication.c:2573
#32 0x000055b54bd3004b in main ()