Please read this before reporting a bug:
https://wiki.archlinux.org/title/Bug_reporting_guidelines
Do NOT report bugs when a package is just outdated, or it is in the AUR. Use the 'flag out of date' link on the package page, or the Mailing List.
REPEAT: Do NOT report bugs for outdated packages!
https://wiki.archlinux.org/title/Bug_reporting_guidelines
Do NOT report bugs when a package is just outdated, or it is in the AUR. Use the 'flag out of date' link on the package page, or the Mailing List.
REPEAT: Do NOT report bugs for outdated packages!
FS#73765 - kmail crashes when trying to send an encrypted or signed email with FATAL:scoped_file.cc(43)] Check
Attached to Project:
Community Packages
Opened by blahhumbug (blahhumbug) - Saturday, 12 February 2022, 21:58 GMT
Last edited by Antonio Rojas (arojas) - Sunday, 13 February 2022, 07:32 GMT
Opened by blahhumbug (blahhumbug) - Saturday, 12 February 2022, 21:58 GMT
Last edited by Antonio Rojas (arojas) - Sunday, 13 February 2022, 07:32 GMT
|
DetailsI previously filed an issue for kmail segfaulting when trying to send an encrypted mail (see https://bugs.archlinux.org/task/73761).. An issue was found related to gpgme 1.17.0 and an ABI change and a new messagelib was released to fix this. However, it appears that there may have been two unique issues related to the gpgme upgrade, and rebuilding messagelib only fixed one issue (selecting an encrypted message was causing a crash).
I can now decrypt received messages that are encrypted. But when I try to *send* a message that will be signed or encrypted, kmail is still crashing. When the crash occurs, the following epoll_wait message spams my terminal: [warn] epoll_wait: Bad file descriptor [warn] epoll_wait: Bad file descriptor ... QSocketNotifier: Invalid socket 120 and type 'Read', disabling... [warn] epoll_wait: Bad file descriptor [warn] epoll_wait: Bad file descriptor ... [385216:385455:0212/135247.187516:FATAL:scoped_file.cc(43)] Check failed: . : Bad file descriptor (9) [warn] epoll_wait: Bad file descriptor [warn] epoll_wait: Bad file descriptor ... org.kde.pim.akonadiserver: CacheCleaner found 4 item parts to expire in collection "RFNArchive" org.kde.pim.akonadiserver: CacheCleaner found 2 item parts to expire in collection "inbox" org.kde.pim.akonadiserver: CacheCleaner found 2 item parts to expire in collection "sent-mail" [1] Trace/BPT trap kmail (core dumped) Installed library versions are below, and I have rebooted after upgrading messagelib to make sure there weren't any stale file handles in use in memory. kmail 21.12.2-1 messagelib 21.12.2-2 gpgme 1.17.0-1 qgpgme 1.17.0-1 |
This task depends upon
Closed by Antonio Rojas (arojas)
Sunday, 13 February 2022, 07:32 GMT
Reason for closing: Fixed
Additional comments about closing: kmail 2.12.2-2
Sunday, 13 February 2022, 07:32 GMT
Reason for closing: Fixed
Additional comments about closing: kmail 2.12.2-2
Executable: kmail PID: 574369 Signal: Segmentation fault (11) Time: 2/12/22 3:20:47 PM PST
If I click the "Developer Information" tab, where it normally would show a backtrace it is only printing: "The crash information could not be generated"
Is there anything special that needs to be done to use the Arch debug packages for kmail?
#0 0x00007f9a00abe8a3 in operator() () at ../../../../qtwebengine/src/3rdparty/chromium/base/logging.cc:873
#1 logging::LogMessage::~LogMessage() () at ../../../../qtwebengine/src/3rdparty/chromium/base/logging.cc:873
#2 0x00007f9a00abf6e2 in logging::ErrnoLogMessage::~ErrnoLogMessage() () at ../../../../qtwebengine/src/3rdparty/chromium/base/logging.cc:1017
#3 0x00007f9a00ad6514 in base::internal::ScopedFDCloseTraits::Free(int) () at ./../../../../qtwebengine/src/3rdparty/chromium/base/files/scoped_file.cc:43
#4 0x00007f99ff102785 in gpu::SharedMemoryBufferBacking::~SharedMemoryBufferBacking() ()
at ./../../../../qtwebengine/src/3rdparty/chromium/gpu/command_buffer/common/buffer.cc:58
#5 gpu::SharedMemoryBufferBacking::~SharedMemoryBufferBacking() () at ./../../../../qtwebengine/src/3rdparty/chromium/gpu/command_buffer/common/buffer.cc:58
#6 0x00007f9a03d76f73 in std::default_delete<gpu::BufferBacking>::operator()(gpu::BufferBacking*) const () at /usr/include/c++/11.1.0/bits/unique_ptr.h:85
#7 std::unique_ptr<gpu::BufferBacking, std::default_delete<gpu::BufferBacking> >::~unique_ptr() () at /usr/include/c++/11.1.0/bits/unique_ptr.h:361
#8 gpu::CommandBufferService::~CommandBufferService() () at ../../../../qtwebengine/src/3rdparty/chromium/gpu/command_buffer/service/command_buffer_service.cc:30
#9 0x00007f9a03d76fd2 in gpu::CommandBufferService::~CommandBufferService() ()
at ../../../../qtwebengine/src/3rdparty/chromium/gpu/command_buffer/service/command_buffer_service.cc:30
#10 0x00007f9a01ad8ca9 in std::default_delete<gpu::CommandBufferService>::operator()(gpu::CommandBufferService*) const ()
at /usr/include/c++/11.1.0/bits/unique_ptr.h:85
#11 std::__uniq_ptr_impl<gpu::CommandBufferService, std::default_delete<gpu::CommandBufferService> >::reset(gpu::CommandBufferService*) ()
at /usr/include/c++/11.1.0/bits/unique_ptr.h:182
#12 std::unique_ptr<gpu::CommandBufferService, std::default_delete<gpu::CommandBufferService> >::reset(gpu::CommandBufferService*) ()
at /usr/include/c++/11.1.0/bits/unique_ptr.h:456
#13 gpu::CommandBufferStub::Destroy() () at ./../../../../qtwebengine/src/3rdparty/chromium/gpu/ipc/service/command_buffer_stub.cc:379
#14 0x00007f9a01ad8e13 in gpu::CommandBufferStub::~CommandBufferStub() () at ./../../../../qtwebengine/src/3rdparty/chromium/gpu/ipc/service/command_buffer_stub.cc:123
#15 0x00007f9a01af17ef in gpu::RasterCommandBufferStub::~RasterCommandBufferStub() ()
at ./../../../../qtwebengine/src/3rdparty/chromium/gpu/ipc/service/raster_command_buffer_stub.cc:65
#16 gpu::RasterCommandBufferStub::~RasterCommandBufferStub() () at ./../../../../qtwebengine/src/3rdparty/chromium/gpu/ipc/service/raster_command_buffer_stub.cc:65
#17 0x00007f9a01ae2720 in std::default_delete<gpu::CommandBufferStub>::operator()(gpu::CommandBufferStub*) const () at /usr/include/c++/11.1.0/bits/unique_ptr.h:85
#18 std::unique_ptr<gpu::CommandBufferStub, std::default_delete<gpu::CommandBufferStub> >::~unique_ptr() () at /usr/include/c++/11.1.0/bits/unique_ptr.h:361
#19 std::pair<int, std::unique_ptr<gpu::CommandBufferStub, std::default_delete<gpu::CommandBufferStub> > >::~pair() () at /usr/include/c++/11.1.0/bits/stl_pair.h:211
#20 std::_Destroy<std::pair<int, std::unique_ptr<gpu::CommandBufferStub, std::default_delete<gpu::CommandBufferStub> > > >(std::pair<int, std::unique_ptr<gpu::CommandBufferStub, std::default_delete<gpu::CommandBufferStub> > >*) () at /usr/include/c++/11.1.0/bits/stl_construct.h:140
#21 std::_Destroy_aux<false>::__destroy<std::pair<int, std::unique_ptr<gpu::CommandBufferStub, std::default_delete<gpu::CommandBufferStub> > >*>(std::pair<int, std::unique_ptr<gpu::CommandBufferStub, std::default_delete<gpu::CommandBufferStub> > >*, std::pair<int, std::unique_ptr<gpu::CommandBufferStub, std::default_delete<gpu::CommandBufferStub> > >*) () at /usr/include/c++/11.1.0/bits/stl_construct.h:152
#22 std::_Destroy<std::pair<int, std::unique_ptr<gpu::CommandBufferStub, std::default_delete<gpu::CommandBufferStub> > >*>(std::pair<int, std::unique_ptr<gpu::CommandBufferStub, std::default_delete<gpu::CommandBufferStub> > >*, std::pair<int, std::unique_ptr<gpu::CommandBufferStub, std::default_delete<gpu::CommandBufferStub> > >*) ()
at /usr/include/c++/11.1.0/bits/stl_construct.h:185
#23 std::_Destroy<std::pair<int, std::unique_ptr<gpu::CommandBufferStub, std::default_delete<gpu::CommandBufferStub> > >*, std::pair<int, std::unique_ptr<gpu::CommandBufferStub, std::default_delete<gpu::CommandBufferStub> > > >(std::pair<int, std::unique_ptr<gpu::CommandBufferStub, std::default_delete<gpu::CommandBufferStub> > >*, std::pair<int, std::unique_ptr<gpu::CommandBufferStub, std::default_delete<gpu::CommandBufferStub> > >*, std::allocator<std::pair<int, std::unique_ptr<gpu::CommandBufferStub, std::default_delete<gpu::CommandBufferStub> > > >&) () at /usr/include/c++/11.1.0/bits/alloc_traits.h:746
#24 std::vector<std::pair<int, std::unique_ptr<gpu::CommandBufferStub, std::default_delete<gpu::CommandBufferStub> > >, std::allocator<std::pair<int, std::unique_ptr<gpu::CommandBufferStub, std::default_delete<gpu::CommandBufferStub> > > > >::_M_erase_at_end(std::pair<int, std::unique_ptr<gpu::CommandBufferStub, std::default_delete<gpu::CommandBufferStub> > >*) () at /usr/include/c++/11.1.0/bits/stl_vector.h:1796
#25 std::vector<std::pair<int, std::unique_ptr<gpu::CommandBufferStub, std::default_delete<gpu::CommandBufferStub> > >, std::allocator<std::pair<int, std::unique_ptr<gpu::CommandBufferStub, std::default_delete<gpu::CommandBufferStub> > > > >::clear() () at /usr/include/c++/11.1.0/bits/stl_vector.h:1499
#26 base::internal::flat_tree<int, std::pair<int, std::unique_ptr<gpu::CommandBufferStub, std::default_delete<gpu::CommandBufferStub> > >, base::internal::GetKeyFromValuePairFirst<int, std::unique_ptr<gpu::CommandBufferStub, std::default_delete<gpu::CommandBufferStub> > >, std::less<void> >::clear() ()
at ../../../../qtwebengine/src/3rdparty/chromium/base/containers/flat_tree.h:563
#27 gpu::GpuChannel::~GpuChannel() () at ./../../../../qtwebengine/src/3rdparty/chromium/gpu/ipc/service/gpu_channel.cc:414
#28 0x00007f9a01ae2f72 in gpu::GpuChannel::~GpuChannel() () at ./../../../../qtwebengine/src/3rdparty/chromium/gpu/ipc/service/gpu_channel.cc:429
#29 std::default_delete<gpu::GpuChannel>::operator()(gpu::GpuChannel*) const () at /usr/include/c++/11.1.0/bits/unique_ptr.h:85
#30 std::__uniq_ptr_impl<gpu::GpuChannel, std::default_delete<gpu::GpuChannel> >::reset(gpu::GpuChannel*) () at /usr/include/c++/11.1.0/bits/unique_ptr.h:182
#31 std::unique_ptr<gpu::GpuChannel, std::default_delete<gpu::GpuChannel> >::reset(gpu::GpuChannel*) () at /usr/include/c++/11.1.0/bits/unique_ptr.h:456
#32 gpu::GpuChannelManager::RemoveChannel(int) () at ./../../../../qtwebengine/src/3rdparty/chromium/gpu/ipc/service/gpu_channel_manager.cc:394
#33 0x00007f9a00b1f607 in base::OnceCallback<void ()>::Run() && () at ../../../../qtwebengine/src/3rdparty/chromium/base/callback.h:100
#34 base::TaskAnnotator::RunTask(char const*, base::PendingTask*) () at ./../../../../qtwebengine/src/3rdparty/chromium/base/task/common/task_annotator.cc:163
#35 0x00007f9a00b32ea2 in base::sequence_manager::internal::ThreadControllerWithMessagePumpImpl::DoWorkImpl(base::sequence_manager::LazyNow*) ()
at ./../../../../qtwebengine/src/3rdparty/chromium/base/task/sequence_manager/thread_controller_with_message_pump_impl.cc:332
#36 0x00007f9a00b3330c in base::sequence_manager::internal::ThreadControllerWithMessagePumpImpl::DoWork() ()
at ./../../../../qtwebengine/src/3rdparty/chromium/base/task/sequence_manager/thread_controller_with_message_pump_impl.cc:252
#37 0x00007f9a00ae1b66 in base::MessagePumpDefault::Run(base::MessagePump::Delegate*) ()
at ./../../../../qtwebengine/src/3rdparty/chromium/base/message_loop/message_pump_default.cc:39
#38 0x00007f9a00b30138 in base::sequence_manager::internal::ThreadControllerWithMessagePumpImpl::Run(bool, base::TimeDelta) ()
at ./../../../../qtwebengine/src/3rdparty/chromium/base/task/sequence_manager/thread_controller_with_message_pump_impl.cc:446
#39 0x00007f9a00b07d76 in base::RunLoop::Run() () at ./../../../../qtwebengine/src/3rdparty/chromium/base/run_loop.cc:124
#40 0x00007f9a00b526ba in base::Thread::Run(base::RunLoop*) () at ./../../../../qtwebengine/src/3rdparty/chromium/base/threading/thread.cc:311
#41 base::Thread::ThreadMain() () at ./../../../../qtwebengine/src/3rdparty/chromium/base/threading/thread.cc:382
#42 0x00007f9a00b6d5bb in ThreadFunc() () at ./../../../../qtwebengine/src/3rdparty/chromium/base/threading/platform_thread_posix.cc:87
#43 0x00007f99f9dce259 in start_thread () at /usr/lib/libpthread.so.0
#44 0x00007f99fc8e85e3 in clone () at /usr/lib/libc.so.6
#0 QString::QString(QString const&) (this=0x7fffffffd080, other=..., this=<optimized out>, other=<optimized out>) at /usr/include/qt/QtCore/qstring.h:1094
#1 0x00007fffed749b86 in std::_Head_base<3ul, QString, false>::_Head_base(QString const&) (__h=..., this=0x7fffffffd080, this=<optimized out>, __h=<optimized out>)
at /usr/include/c++/11.1.0/tuple:182
#2 std::_Tuple_impl<3ul, QString, QString>::_Tuple_impl(QString const&, QString const&) (__tail#0=<optimized out>, __head=..., this=0x7fffffffd078)
at /usr/include/c++/11.1.0/tuple:270
#3 std::_Tuple_impl<2ul, QString, QString, QString>::_Tuple_impl(QString const&, QString const&, QString const&)
(__tail#1=<optimized out>, __tail#0=..., __head=..., this=0x7fffffffd078) at /usr/include/c++/11.1.0/tuple:270
#4 std::_Tuple_impl<1ul, GpgME::Key, QString, QString, QString>::_Tuple_impl(GpgME::Key const&, QString const&, QString const&, QString const&)
(__tail#2=<optimized out>, __tail#1=..., __tail#0=..., __head=..., this=0x7fffffffd078) at /usr/include/c++/11.1.0/tuple:270
#5 std::_Tuple_impl<0ul, std::_Placeholder<1>, GpgME::Key, QString, QString, QString>::_Tuple_impl(std::_Placeholder<1> const&, GpgME::Key const&, QString const&, QString const&, QString const&) (__tail#3=<optimized out>, __tail#2=..., __tail#1=..., __tail#0=..., __head=<optimized out>, this=0x7fffffffd078)
at /usr/include/c++/11.1.0/tuple:270
#6 std::tuple<std::_Placeholder<1>, GpgME::Key, QString, QString, QString>::tuple<true, true>(std::_Placeholder<1> const&, GpgME::Key const&, QString const&, QString const&, QString const&) (__elements#4=<optimized out>, __elements#3=..., __elements#2=..., __elements#1=..., __elements#0=<optimized out>, this=0x7fffffffd078)
at /usr/include/c++/11.1.0/tuple:719
#7 std::_Bind<std::tuple<GpgME::Error, QString, GpgME::Error> (*(std::_Placeholder<1>, GpgME::Key, QString, QString, QString))(GpgME::Context*, GpgME::Key const&, QString const&, QString const&, QString const&)>::_Bind<std::_Placeholder<1> const&, GpgME::Key const&, QString const&, QString const&, QString const&>(std::tuple<GpgME::Error, QString, GpgME::Error> (*&&)(GpgME::Context*, GpgME::Key const&, QString const&, QString const&, QString const&), std::_Placeholder<1> const&, GpgME::Key const&, QString const&, QString const&, QString const&) (__f=<optimized out>, this=<optimized out>) at /usr/include/c++/11.1.0/functional:490
#8 std::bind<std::tuple<GpgME::Error, QString, GpgME::Error> (*)(GpgME::Context*, GpgME::Key const&, QString const&, QString const&, QString const&), std::_Placeholder<1> const&, GpgME::Key const&, QString const&, QString const&, QString const&>(std::tuple<GpgME::Error, QString, GpgME::Error> (*&&)(GpgME::Context*, GpgME::Key const&, QString const&, QString const&, QString const&), std::_Placeholder<1> const&, GpgME::Key const&, QString const&, QString const&, QString const&) (__f=<optimized out>)
at /usr/include/c++/11.1.0/functional:793
#9 QGpgME::QGpgMEAddUserIDJob::start(GpgME::Key const&, QString const&, QString const&, QString const&)
(this=0x5555577f3ab0, key=..., name=..., email=..., comment=<optimized out>) at /build/gpgme/src/gpgme-1.17.0/lang/qt/src/qgpgmeadduseridjob.cpp:82
#10 0x00007ffff7e09059 in KMComposerWin::slotRecipientAdded(MessageComposer::RecipientLineNG*) (this=0x555555e61a60, line=<optimized out>)
at /usr/src/debug/kmail-21.12.2/src/editor/kmcomposerwin.cpp:3776
#11 0x00007fffeef3fd93 in QtPrivate::QSlotObjectBase::call(QObject*, void**)
(a=0x7fffffffd2e0, r=<optimized out>, this=0x5555577a6130, this=<optimized out>, r=<optimized out>, a=<optimized out>)
at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398
#12 doActivate<false>(QObject*, int, void**) (sender=0x55555658fa10, signal_index=15, argv=0x7fffffffd2e0) at kernel/qobject.cpp:3886
#13 0x00007fffee0c6364 in MessageComposer::RecipientLineNG::analyzeLine(QString const&) (this=0x55555658fa10, text=<optimized out>)
at /usr/src/debug/messagelib-21.12.2/messagecomposer/src/recipient/recipientline.cpp:120
#14 0x00007fffeef3fd93 in QtPrivate::QSlotObjectBase::call(QObject*, void**)
(a=0x7fffffffd430, r=<optimized out>, this=0x555556dc5930, this=<optimized out>, r=<optimized out>, a=<optimized out>)
at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398
#15 doActivate<false>(QObject*, int, void**) (sender=0x5555560e4af0, signal_index=7, argv=0x7fffffffd430) at kernel/qobject.cpp:3886
#16 0x00007fffefab8ef7 in QLineEdit::textChanged(QString const&) (this=<optimized out>, _t1=<optimized out>) at .moc/moc_qlineedit.cpp:447
#17 0x00007fffeef3fddf in doActivate<false>(QObject*, int, void**) (sender=0x555555f9a030, signal_index=6, argv=0x7fffffffd530) at kernel/qobject.cpp:3898
#18 0x00007fffefac41fa in QWidgetLineControl::textChanged(QString const&) (this=this@entry=0x555555f9a030, _t1=...) at .moc/moc_qwidgetlinecontrol_p.cpp:273
#19 0x00007fffefac7eb1 in QWidgetLineControl::finishChange(int, bool, bool)
(this=0x555555f9a030, validateFromState=-10896, update=<optimized out>, edited=<optimized out>) at widgets/qwidgetlinecontrol.cpp:736
#20 0x00007fffefac8199 in QWidgetLineControl::internalSetText(QString const&, int, bool) (this=0x555555f9a030, txt=..., pos=-1, edited=<optimized out>)
at widgets/qwidgetlinecontrol.cpp:772
#21 0x00007fffedb1dc39 in PimCommon::AddresseeLineEdit::setText(QString const&) (this=0x5555560e4af0, text=...)
at /usr/src/debug/pimcommon-21.12.2/src/pimcommonakonadi/addressline/addresslineedit/addresseelineedit.cpp:249
#22 0x00007fffee0c38af in MessageComposer::RecipientLineNG::fieldsFromData() (this=0x55555658fa10)
at /usr/src/debug/messagelib-21.12.2/messagecomposer/src/recipient/recipientline.cpp:169
#23 0x00007fffee0c39de in MessageComposer::RecipientLineNG::setData(QSharedPointer<KPIM::MultiplyingLineData> const&) (this=0x55555658fa10, data=<optimized out>)
at /usr/src/debug/messagelib-21.12.2/messagecomposer/src/recipient/recipientline.cpp:135
#24 0x00007fffed349235 in KPIM::MultiplyingLineEditor::addData(QSharedPointer<KPIM::MultiplyingLineData> const&, bool)
(this=this@entry=0x5555560db100, data=..., showDialogBox=showDialogBox@entry=false)
at /usr/src/debug/libkdepim-21.12.2/src/libkdepim/multiplyingline/multiplyinglineeditor.cpp:50
#25 0x00007fffee0c4133 in MessageComposer::RecipientsEditor::addRecipient(QString const&, MessageComposer::Recipient::Type)
(this=0x5555560db100, recipient=..., type=MessageComposer::Recipient::To)
at /usr/src/debug/messagelib-21.12.2/messagecomposer/src/recipient/recipientseditor.cpp:102
#26 0x00007fffee0c8cd5 in MessageComposer::RecipientsEditor::setRecipientString(QVector<KMime::Types::Mailbox> const&, MessageComposer::Recipient::Type)
(this=0x5555560db100, mailboxes=..., type=MessageComposer::Recipient::To)
at /usr/src/debug/messagelib-21.12.2/messagecomposer/src/recipient/recipientseditor.cpp:124
#27 0x00007fffee0a0d5a in MessageComposer::ComposerViewBase::setMessage(QSharedPointer<KMime::Message> const&, bool)
(this=0x555556cf0430, msg=..., allowDecryption=allowDecryption@entry=false)
at /usr/src/debug/messagelib-21.12.2/messagecomposer/src/composer/composerviewbase.cpp:115
#28 0x00007ffff7dfa180 in KMComposerWin::setMessage(QSharedPointer<KMime::Message> const&, bool, bool, bool, bool, bool)
(this=0x555555e61a60, newMsg=..., lastSignState=<optimized out>, lastEncryptState=<optimized out>, mayAutoSign=<optimized out>, allowDecryption=<optimized out>, isModified=false) at /usr/src/debug/kmail-21.12.2/src/editor/kmcomposerwin.cpp:1777
#29 0x00007ffff7e441fe in KMKernel::recoverDeadLetters() (this=this@entry=0x7fffffffe0d0) at /usr/src/debug/kmail-21.12.2/src/kmkernel.cpp:1068
#30 0x00005555555580eb in main(int, char**) (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/kmail-21.12.2/src/main.cpp:164