Bug 456535 - kontact crashed when closing
Summary: kontact crashed when closing
Status: REPORTED
Alias: None
Product: kontact
Classification: Applications
Component: general (show other bugs)
Version: unspecified
Platform: Fedora RPMs Linux
: NOR crash
Target Milestone: ---
Assignee: kdepim bugs
URL:
Keywords: drkonqi
Depends on:
Blocks:
 
Reported: 2022-07-10 01:18 UTC by Matt Fagnani
Modified: 2022-07-10 12:40 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments
valgrind log when running and closing kontact (329.19 KB, text/plain)
2022-07-10 12:40 UTC, Matt Fagnani
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Matt Fagnani 2022-07-10 01:18:36 UTC
Application: kontact (5.20.2 (22.04.2))

Qt Version: 5.15.4
Frameworks Version: 5.96.0
Operating System: Linux 5.19.0-0.rc5.20220708gite8a4e1c1bb69.44.fc37.x86_64 x86_64
Windowing System: Wayland
Distribution: Fedora Linux 37 (KDE Plasma Prerelease)
DrKonqi: 5.25.2 [KCrashBackend]

-- Information about the crash:
I booted a Fedora 36 KDE Plasma installation. I started Plasma 5.25.2 on Wayland. I started GNOME Boxes. I booted a Fedora Rawhide QEMU/KVM VM in GNOME Boxes with 3 GiB RAM, EFI enabled, and 3D acceleration enabled from the image Fedora-KDE-Live-x86_64-Rawhide-20220709.n.0.iso https://koji.fedoraproject.org/koji/buildinfo?buildID=1998908 I started kontact 22.04.2 from the Application Launcher menu. I selected Help > About Kontact, then OK. I closed kontact (by clicking x at the top right corner). Kontact segmentation faulted when closing.

The reporter is unsure if this crash is reproducible.

-- Backtrace:
Application: Kontact (kontact), signal: Segmentation fault

[KCrash Handler]
#4  0x00007f4163bb3d67 in KMail::UnityServiceManager::initListOfCollection (this=0x558063823f50) at /usr/src/debug/kmail-22.04.1-1.fc37.x86_64/src/unityservicemanager.cpp:106
#5  0x00007f41edadb216 in QtPrivate::QSlotObjectBase::call (a=0x7ffef85cc320, r=<optimized out>, this=0x5580638247c0) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398
#6  doActivate<false> (sender=0x558063815b30, signal_index=16, argv=0x7ffef85cc320) at kernel/qobject.cpp:3886
#7  0x00007f41edad6247 in QMetaObject::activate (sender=<optimized out>, m=<optimized out>, local_signal_index=local_signal_index@entry=13, argv=argv@entry=0x7ffef85cc320) at kernel/qobject.cpp:3946
#8  0x00007f41806df8de in Akonadi::Monitor::collectionAdded (this=<optimized out>, _t1=..., _t2=...) at /usr/src/debug/kf5-akonadi-server-22.04.3-1.fc37.x86_64/redhat-linux-build/src/core/KF5AkonadiCore_autogen/include/moc_monitor.cpp:955
#9  0x00007f41806f1d57 in Akonadi::MonitorPrivate::emitToListeners<void (Akonadi::Monitor::*)(Akonadi::Collection const&, Akonadi::Collection const&), Akonadi::Collection, Akonadi::Collection> (signal=<optimized out>, this=0x558063815b50) at /usr/src/debug/kf5-akonadi-server-22.04.3-1.fc37.x86_64/src/core/monitor_p.h:390
#10 Akonadi::MonitorPrivate::emitCollectionNotification (this=0x558063815b50, msg=..., col=..., par=..., dest=...) at /usr/src/debug/kf5-akonadi-server-22.04.3-1.fc37.x86_64/src/core/monitor_p.cpp:1115
#11 0x00007f41806ee565 in Akonadi::MonitorPrivate::emitNotification (this=0x558063815b50, msg=...) at /usr/src/debug/kf5-akonadi-server-22.04.3-1.fc37.x86_64/src/core/monitor_p.cpp:520
#12 0x00007f41806b2592 in Akonadi::ChangeRecorderPrivate::emitNotification (this=0x558063815b50, msg=...) at /usr/src/debug/kf5-akonadi-server-22.04.3-1.fc37.x86_64/src/core/changerecorder_p.cpp:216
#13 0x00007f41806ecf35 in Akonadi::MonitorPrivate::flushPipeline (this=0x558063815b50) at /usr/src/debug/kf5-akonadi-server-22.04.3-1.fc37.x86_64/src/core/monitor_p.cpp:969
#14 0x00007f41806ed8ed in Akonadi::MonitorPrivate::dataAvailable (this=0x558063815b50) at /usr/src/debug/kf5-akonadi-server-22.04.3-1.fc37.x86_64/src/core/monitor_p.cpp:978
#15 0x00007f41edadb216 in QtPrivate::QSlotObjectBase::call (a=0x7ffef85cc600, r=<optimized out>, this=0x5580638073b0) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398
#16 doActivate<false> (sender=0x558063815980, signal_index=3, argv=0x7ffef85cc600) at kernel/qobject.cpp:3886
#17 0x00007f41edadb39f in doActivate<false> (sender=0x7f41b000f520, signal_index=6, argv=0x7ffef85cc730) at kernel/qobject.cpp:3898
#18 0x00007f41edad6247 in QMetaObject::activate (sender=sender@entry=0x7f41b000f520, m=<optimized out>, local_signal_index=local_signal_index@entry=3, argv=argv@entry=0x7ffef85cc730) at kernel/qobject.cpp:3946
#19 0x00007f41eef88d29 in KJob::result (this=this@entry=0x7f41b000f520, _t1=<optimized out>, _t1@entry=0x7f41b000f520, _t2=...) at /usr/src/debug/kf5-kcoreaddons-5.96.0-1.fc37.x86_64/redhat-linux-build/src/lib/KF5CoreAddons_autogen/include/moc_kjob.cpp:633
#20 0x00007f41eef8e34b in KJob::finishJob (this=0x7f41b000f520, emitResult=<optimized out>) at /usr/src/debug/kf5-kcoreaddons-5.96.0-1.fc37.x86_64/src/lib/jobs/kjob.cpp:98
#21 0x00007f41eef8e3fe in KJob::kill (this=0x7f41b000f520, verbosity=verbosity@entry=KJob::EmitResult) at /usr/src/debug/kf5-kcoreaddons-5.96.0-1.fc37.x86_64/src/lib/jobs/kjob.cpp:118
#22 0x00007f418070d0e1 in Akonadi::SessionPrivate::clear (this=0x5580637fa210, forceReconnect=forceReconnect@entry=false) at /usr/src/debug/kf5-akonadi-server-22.04.3-1.fc37.x86_64/src/core/session.cpp:440
#23 0x00007f418070d246 in Akonadi::Session::~Session (this=<optimized out>, this=<optimized out>) at /usr/src/debug/kf5-akonadi-server-22.04.3-1.fc37.x86_64/src/core/session.cpp:396
#24 0x00007f418070d2ad in Akonadi::Session::~Session (this=<optimized out>, this=<optimized out>) at /usr/src/debug/kf5-akonadi-server-22.04.3-1.fc37.x86_64/src/core/session.cpp:397
#25 0x00007f41edad051a in QObjectPrivate::deleteChildren (this=this@entry=0x5580637cd8f0) at kernel/qobject.cpp:2104
#26 0x00007f41edad7fa0 in QObject::~QObject (this=0x55806378a790, __in_chrg=<optimized out>) at kernel/qobject.cpp:1082
#27 0x00007f4163bb20cd in KMKernel::~KMKernel (this=<optimized out>, this=<optimized out>) at /usr/src/debug/kmail-22.04.1-1.fc37.x86_64/src/kmkernel.cpp:246
#28 0x00007f41c800a1e3 in KMailPart::~KMailPart (this=<optimized out>, this=<optimized out>) at /usr/src/debug/kmail-22.04.1-1.fc37.x86_64/src/kmail_part.cpp:91
#29 0x00007f41c800a31d in KMailPart::~KMailPart (this=<optimized out>, this=<optimized out>) at /usr/src/debug/kmail-22.04.1-1.fc37.x86_64/src/kmail_part.cpp:92
#30 0x00007f41ef12f932 in KontactInterface::Plugin::~Plugin (this=<optimized out>, __vtt_parm=<optimized out>, this=<optimized out>, __vtt_parm=<optimized out>) at /usr/src/debug/kf5-kontactinterface-22.04.3-1.fc37.x86_64/src/plugin.cpp:74
#31 0x00007f4163ddac55 in KMailPlugin::~KMailPlugin (this=<optimized out>, this=<optimized out>) at /usr/src/debug/kmail-22.04.1-1.fc37.x86_64/src/kontactplugin/kmail/kmail_plugin.cpp:145
#32 0x00007f4163ddac8d in KMailPlugin::~KMailPlugin (this=<optimized out>, this=<optimized out>) at /usr/src/debug/kmail-22.04.1-1.fc37.x86_64/src/kontactplugin/kmail/kmail_plugin.cpp:145
#33 0x00007f41ef165b7e in qDeleteAll<QList<KontactInterface::Plugin*>::const_iterator> (end=..., begin=...) at /usr/include/qt5/QtCore/qalgorithms.h:320
#34 qDeleteAll<QList<KontactInterface::Plugin*> > (c=...) at /usr/include/qt5/QtCore/qalgorithms.h:328
#35 Kontact::MainWindow::~MainWindow (this=<optimized out>, this=<optimized out>) at /usr/src/debug/kontact-22.04.2-1.fc37.x86_64/src/mainwindow.cpp:182
#36 0x00007f41ef165dfd in Kontact::MainWindow::~MainWindow (this=<optimized out>, this=<optimized out>) at /usr/src/debug/kontact-22.04.2-1.fc37.x86_64/src/mainwindow.cpp:183
#37 0x00007f41edad1ab1 in QObject::event (this=0x55806344c340, e=0x558064447c50) at kernel/qobject.cpp:1301
#38 0x00007f41ef0d7b9d in KXmlGuiWindow::event(QEvent*) () from /lib64/libKF5XmlGui.so.5
#39 0x00007f41ee7aec42 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /lib64/libQt5Widgets.so.5
#40 0x00007f41edaa7c38 in QCoreApplication::notifyInternal2 (receiver=0x55806344c340, event=0x558064447c50) at kernel/qcoreapplication.cpp:1064
#41 0x00007f41edaaaf94 in QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x5580632bac00) at kernel/qcoreapplication.cpp:1821
#42 0x00007f41edaf8de7 in postEventSourceDispatch (s=0x5580632e2e20) at kernel/qeventdispatcher_glib.cpp:277
#43 0x00007f41e446974f in g_main_context_dispatch () from /lib64/libglib-2.0.so.0
#44 0x00007f41e44be7c8 in g_main_context_iterate.constprop () from /lib64/libglib-2.0.so.0
#45 0x00007f41e44669e0 in g_main_context_iteration () from /lib64/libglib-2.0.so.0
#46 0x00007f41edaf88da in QEventDispatcherGlib::processEvents (this=0x5580632e3490, flags=...) at kernel/qeventdispatcher_glib.cpp:423
#47 0x00007f41edaa669a in QEventLoop::exec (this=this@entry=0x7ffef85ccee0, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:69
#48 0x00007f41edaae742 in QCoreApplication::exec () at ../../include/QtCore/../../src/corelib/global/qflags.h:121
#49 0x00005580617b2651 in main (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/kontact-22.04.2-1.fc37.x86_64/src/main.cpp:214
[Inferior 1 (process 2263) detached]

Reported using DrKonqi
Comment 1 Matt Fagnani 2022-07-10 12:40:00 UTC
Created attachment 150510 [details]
valgrind log when running and closing kontact

When I ran kontact in konsole, I got the following output all but the first line of which happened when closing it.

Cannot initialize model with data QJsonObject(). missing: QJsonValue(string, "urls")
kf.xmlgui: 0x31bb9170 deleted without having been removed from the factory first. This will leak standalone popupmenus and could lead to crashes.
kf.xmlgui: 0x31b6b048 deleted without having been removed from the factory first. This will leak standalone popupmenus and could lead to crashes.
kf.xmlgui: 0x31bdace0 deleted without having been removed from the factory first. This will leak standalone popupmenus and could lead to crashes.
kf.xmlgui: 0x31ba27e8 deleted without having been removed from the factory first. This will leak standalone popupmenus and could lead to crashes.
kf.xmlgui: 0x2ef98678 deleted without having been removed from the factory first. This will leak standalone popupmenus and could lead to crashes.
kf.xmlgui: 0x31b8a878 deleted without having been removed from the factory first. This will leak standalone popupmenus and could lead to crashes.
kf.xmlgui: 0x31b15598 deleted without having been removed from the factory first. This will leak standalone popupmenus and could lead to crashes.
kf.xmlgui: 0x31b532c8 deleted without having been removed from the factory first. This will leak standalone popupmenus and could lead to crashes.

I ran valgrind --log-file=valgrind_kontact_1.txt kontact in a Fedora 36 KDE Plasma installation and closed it. The valgrind log showed use of uninitialized variables repeatedly such as the following.

==2302== Conditional jump or move depends on uninitialised value(s)
==2302==    at 0x12BDC9F0: re2::SparseSetT<void>::contains(int) const (sparse_set.h:227)
==2302==    by 0x12BFCD19: UnknownInlinedFun (sparse_set.h:156)
==2302==    by 0x12BFCD19: UnknownInlinedFun (sparse_set.h:133)
==2302==    by 0x12BFCD19: UnknownInlinedFun (prog.cc:138)
==2302==    by 0x12BFCD19: UnknownInlinedFun (prog.cc:136)
==2302==    by 0x12BFCD19: re2::Prog::Optimize() (prog.cc:241)
==2302==    by 0x12BE159B: re2::Compiler::Finish(re2::Regexp*) (compile.cc:1172)
==2302==    by 0x12BE6898: re2::Compiler::Compile(re2::Regexp*, bool, long) (compile.cc:1156)
==2302==    by 0x12C08E47: re2::RE2::Init(re2::StringPiece const&, re2::RE2::Options const&) (re2.cc:223)
==2302==    by 0x12C099D3: re2::RE2::RE2(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) (re2.cc:118)
==2302==    by 0x794DB2A: StringMismatch (gpu_control_list.cc:112)
==2302==    by 0x794DB2A: gpu::(anonymous namespace)::StringMismatch(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char const*) [clone .part.0] (gpu_control_list.cc:119)
==2302==    by 0x794E2A5: StringMismatch (gpu_control_list.cc:316)
==2302==    by 0x794E2A5: gpu::GpuControlList::GLStrings::Contains(gpu::GPUInfo const&) const (gpu_control_list.cc:316)
==2302==    by 0x7950653: gpu::GpuControlList::Conditions::Contains(gpu::GpuControlList::OsType, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, gpu::GPUInfo const&) const (gpu_control_list.cc:521)
==2302==    by 0x7950A75: gpu::GpuControlList::Entry::Contains(gpu::GpuControlList::OsType, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, gpu::GPUInfo const&) const (gpu_control_list.cc:536)
==2302==    by 0x7951665: gpu::GpuControlList::MakeDecision(gpu::GpuControlList::OsType, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, gpu::GPUInfo const&, unsigned int) (gpu_control_list.cc:667)
==2302==    by 0x796242C: gpu::ComputeGpuFeatureInfo(gpu::GPUInfo const&, gpu::GpuPreferences const&, base::CommandLine*, bool*) (gpu_util.cc:588)
==2302== 
==2302== Use of uninitialised value of size 8
==2302==    at 0x12BDC9F2: re2::SparseSetT<void>::contains(int) const (sparse_set.h:227)
==2302==    by 0x12BFCD19: UnknownInlinedFun (sparse_set.h:156)
==2302==    by 0x12BFCD19: UnknownInlinedFun (sparse_set.h:133)
==2302==    by 0x12BFCD19: UnknownInlinedFun (prog.cc:138)
==2302==    by 0x12BFCD19: UnknownInlinedFun (prog.cc:136)
==2302==    by 0x12BFCD19: re2::Prog::Optimize() (prog.cc:241)
==2302==    by 0x12BE159B: re2::Compiler::Finish(re2::Regexp*) (compile.cc:1172)
==2302==    by 0x12BE6898: re2::Compiler::Compile(re2::Regexp*, bool, long) (compile.cc:1156)
==2302==    by 0x12C08E47: re2::RE2::Init(re2::StringPiece const&, re2::RE2::Options const&) (re2.cc:223)
==2302==    by 0x12C099D3: re2::RE2::RE2(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) (re2.cc:118)
==2302==    by 0x794DB2A: StringMismatch (gpu_control_list.cc:112)
==2302==    by 0x794DB2A: gpu::(anonymous namespace)::StringMismatch(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char const*) [clone .part.0] (gpu_control_list.cc:119)
==2302==    by 0x794E2A5: StringMismatch (gpu_control_list.cc:316)
==2302==    by 0x794E2A5: gpu::GpuControlList::GLStrings::Contains(gpu::GPUInfo const&) const (gpu_control_list.cc:316)
==2302==    by 0x7950653: gpu::GpuControlList::Conditions::Contains(gpu::GpuControlList::OsType, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, gpu::GPUInfo const&) const (gpu_control_list.cc:521)
==2302==    by 0x7950A75: gpu::GpuControlList::Entry::Contains(gpu::GpuControlList::OsType, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, gpu::GPUInfo const&) const (gpu_control_list.cc:536)
==2302==    by 0x7951665: gpu::GpuControlList::MakeDecision(gpu::GpuControlList::OsType, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, gpu::GPUInfo const&, unsigned int) (gpu_control_list.cc:667)
==2302==    by 0x796242C: gpu::ComputeGpuFeatureInfo(gpu::GPUInfo const&, gpu::GpuPreferences const&, base::CommandLine*, bool*) (gpu_util.cc:588)

Invalid reads which might've been use-after-free errors occurred multiple times starting with

==2302== Invalid read of size 1
==2302==    at 0x484B5F6: strlen (vg_replace_strmem.c:495)
==2302==    by 0x987E08F: UnknownInlinedFun (char_traits.h:395)
==2302==    by 0x987E08F: UnknownInlinedFun (basic_string.h:641)
==2302==    by 0x987E08F: gl::GLSurface::ExtensionsContain(char const*, char const*) (gl_surface.cc:271)
==2302==    by 0x988C71F: gl::GLContextEGL::Initialize(gl::GLSurface*, gl::GLContextAttribs const&) (gl_context_egl.cc:120)
==2302==    by 0x986D474: gl::InitializeGLContext(scoped_refptr<gl::GLContext>, gl::GLSurface*, gl::GLContextAttribs const&) (gl_context.cc:522)
==2302==    by 0x92940D8: ui::GLOzoneEGL::CreateGLContext(gl::GLShareGroup*, gl::GLSurface*, gl::GLContextAttribs const&) (gl_ozone_egl.cc:64)
==2302==    by 0x9B804DE: gl::init::CreateGLContext(gl::GLShareGroup*, gl::GLSurface*, gl::GLContextAttribs const&) (gl_factory_ozone.cc:74)
==2302==    by 0x795B2EE: InitializeGLContext (gpu_info_collector.cc:80)
==2302==    by 0x795B2EE: gpu::CollectGraphicsInfoGL(gpu::GPUInfo*) (gpu_info_collector.cc:281)
==2302==    by 0xA302B16: gpu::GpuInit::InitializeInProcess(base::CommandLine*, gpu::GpuPreferences const&) (gpu_init.cc:711)
==2302==    by 0xB73DBFE: content::InProcessGpuThread::Init() (in_process_gpu_thread.cc:57)
==2302==    by 0x9323FB4: base::Thread::ThreadMain() (thread.cc:371)
==2302==    by 0x9341C6A: base::(anonymous namespace)::ThreadFunc(void*) (platform_thread_posix.cc:87)
==2302==    by 0x6134E2C: start_thread (pthread_create.c:442)
==2302==  Address 0x2efb52e0 is 0 bytes inside a block of size 858 free'd
==2302==    at 0x48488DD: operator delete(void*, unsigned long) (vg_replace_malloc.c:935)
==2302==    by 0x9887FF4: UnknownInlinedFun (new_allocator.h:158)
==2302==    by 0x9887FF4: UnknownInlinedFun (alloc_traits.h:496)
==2302==    by 0x9887FF4: UnknownInlinedFun (basic_string.h:293)
==2302==    by 0x9887FF4: UnknownInlinedFun (basic_string.h:287)
==2302==    by 0x9887FF4: UnknownInlinedFun (basic_string.h:795)
==2302==    by 0x9887FF4: ~pair (stl_pair.h:185)
==2302==    by 0x9887FF4: destroy<std::pair<void* const, std::__cxx11::basic_string<char> > > (new_allocator.h:181)
==2302==    by 0x9887FF4: destroy<std::pair<void* const, std::__cxx11::basic_string<char> > > (alloc_traits.h:535)
==2302==    by 0x9887FF4: _M_destroy_node (stl_tree.h:623)
==2302==    by 0x9887FF4: _M_drop_node (stl_tree.h:631)
==2302==    by 0x9887FF4: std::_Rb_tree<void*, std::pair<void* const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::_Select1st<std::pair<void* const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >, std::less<void*>, std::allocator<std::pair<void* const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >::_M_erase(std::_Rb_tree_node<std::pair<void* const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >*) [clone .isra.0] (stl_tree.h:1937)
==2302==    by 0x988BE2C: _M_erase (stl_tree.h:1935)
==2302==    by 0x988BE2C: clear (stl_tree.h:1254)
==2302==    by 0x988BE2C: clear (stl_map.h:1182)
==2302==    by 0x988BE2C: gl::RealEGLApi::SetDisabledExtensions(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) (gl_egl_api_implementation.cc:65)
==2302==    by 0xA302C2B: gpu::GpuInit::InitializeInProcess(base::CommandLine*, gpu::GpuPreferences const&) (gpu_init.cc:691)
==2302==    by 0xB73DBFE: content::InProcessGpuThread::Init() (in_process_gpu_thread.cc:57)
==2302==    by 0x9323FB4: base::Thread::ThreadMain() (thread.cc:371)
==2302==    by 0x9341C6A: base::(anonymous namespace)::ThreadFunc(void*) (platform_thread_posix.cc:87)
==2302==    by 0x6134E2C: start_thread (pthread_create.c:442)
==2302==    by 0x61B97D3: clone (clone.S:100)
==2302==  Block was alloc'd at
==2302==    at 0x4845FF5: operator new(unsigned long) (vg_replace_malloc.c:422)
==2302==    by 0x5FBF164: std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::reserve(unsigned long) (basic_string.tcc:311)
==2302==    by 0x92E7DE0: JoinStringT<base::span<const base::BasicStringPiece<std::__cxx11::basic_string<char> > >, std::__cxx11::basic_string<char> > (string_util_internal.h:529)
==2302==    by 0x92E7DE0: base::JoinString(base::span<base::BasicStringPiece<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > const, 18446744073709551615ul>, base::BasicStringPiece<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >) (string_util.cc:409)
==2302==    by 0x987E65B: gl::FilterGLExtensionList(char const*, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&) (gl_implementation.cc:219)
==2302==    by 0x988C218: gl::RealEGLApi::eglQueryStringFn(void*, int) (gl_egl_api_implementation.cc:86)
==2302==    by 0x7289747: gl::GLSurfaceEGLQt::InitializeOneOff() (gl_surface_egl_qt.cpp:95)
==2302==    by 0x7288F88: ui::GLOzoneEGLQt::InitializeGLOneOffPlatform() (gl_ozone_egl_qt.cpp:103)
==2302==    by 0x9B80FB9: gl::init::InitializeGLOneOffPlatformImplementation(bool, bool, bool) (gl_factory.cc:177)
==2302==    by 0x9B81163: gl::init::(anonymous namespace)::InitializeGLOneOffPlatformHelper(bool) (gl_factory.cc:107)
==2302==    by 0x9B869D7: gl::init::InitializeGLNoExtensionsOneOff(bool) (gl_factory.cc:134)
==2302==    by 0xA302600: gpu::GpuInit::InitializeInProcess(base::CommandLine*, gpu::GpuPreferences const&) (gpu_init.cc:666)
==2302==    by 0xB73DBFE: content::InProcessGpuThread::Init() (in_process_gpu_thread.cc:57)
==2302== 

Invalid reads which looked like buffer overreads happened many times after that.

==2302== Thread 1:
==2302== Invalid read of size 16
==2302==    at 0x3ADE4BD5: ???
==2302==    by 0x31C1E507: ???
==2302==  Address 0x31c1e52e is 62 bytes inside a block of size 76 alloc'd
==2302==    at 0x484586F: malloc (vg_replace_malloc.c:381)
==2302==    by 0x59D8481: QArrayData::allocate(unsigned long, unsigned long, unsigned long, QFlags<QArrayData::AllocationOption>) (qarraydata.cpp:218)
==2302==    by 0x5A560D6: allocate (qarraydata.h:224)
==2302==    by 0x5A560D6: QString::QString(int, Qt::Initialization) (qstring.cpp:2163)
==2302==    by 0x5BE0BC0: QUtf8::convertToUnicode(char const*, int) (qutfcodec.cpp:485)
==2302==    by 0x5A5A415: QString::fromUtf8_helper(char const*, int) (qstring.cpp:5591)
==2302==    by 0x67EF6EF: UnknownInlinedFun (qstring.h:706)
==2302==    by 0x67EF6EF: UnknownInlinedFun (kconfig.cpp:300)
==2302==    by 0x67EF6EF: UnknownInlinedFun (stl_algo.h:4263)
==2302==    by 0x67EF6EF: stringListFromUtf8Collection(std::unordered_set<std::basic_string_view<char, std::char_traits<char> >, std::hash<std::basic_string_view<char, std::char_traits<char> > >, std::equal_to<std::basic_string_view<char, std::char_traits<char> > >, std::allocator<std::basic_string_view<char, std::char_traits<char> > > > const&) [clone .lto_priv.0] (kconfig.cpp:299)
==2302==    by 0x67EF8B7: KConfig::groupList() const (kconfig.cpp:317)
==2302==    by 0x3F25D2BE: FolderArchiveManager::load() (folderarchivemanager.cpp:152)
==2302==    by 0x3F306AA8: UnknownInlinedFun (folderarchivemanager.cpp:30)
==2302==    by 0x3F306AA8: KMKernel::KMKernel(QObject*) (kmkernel.cpp:130)
==2302==    by 0x3DEAD8A2: UnknownInlinedFun (kmail_part.cpp:50)
==2302==    by 0x3DEAD8A2: QObject* KPluginFactory::createPartInstance<KMailPart>(QWidget*, QObject*, QList<QVariant> const&) (kpluginfactory.h:881)
==2302==    by 0x4A6E4E2: KPluginFactory::create(char const*, QWidget*, QObject*, QList<QVariant> const&, QString const&) (kpluginfactory.cpp:236)
==2302==    by 0x48CECC7: UnknownInlinedFun (kpluginfactory.h:922)
==2302==    by 0x48CECC7: UnknownInlinedFun (kpluginfactory.h:509)
==2302==    by 0x48CECC7: KontactInterface::Core::createPart(char const*) (core.cpp:70)
==2302== 

I'm attaching the full valgrind log. I've only seen kontact crash once when closing it several times.