Bug 498795 - Crash when typing email address in "Encrypt for others"
Summary: Crash when typing email address in "Encrypt for others"
Status: RESOLVED DOWNSTREAM
Alias: None
Product: kleopatra
Classification: Applications
Component: general (other bugs)
Version First Reported In: 4.0.0.241201
Platform: Arch Linux Linux
: NOR crash
Target Milestone: ---
Assignee: Ingo Klöcker
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2025-01-17 12:03 UTC by Paul Worrall
Modified: 2025-01-20 12:32 UTC (History)
4 users (show)

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


Attachments
About Kleopatra dialog (68.96 KB, image/png)
2025-01-20 11:37 UTC, Paul Worrall
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Paul Worrall 2025-01-17 12:03:29 UTC
SUMMARY
When signing and encrypting a file, when I start typing in the "Encrypt for others" box, Kleopatra crashes on the second character

STEPS TO REPRODUCE
1. Click the "Sign/Encrypt" button
2. Select a file
3. Leave the default "Sign as" and "Encrypt for me" selected
4. Focus the "Encrypt for others" box and start typing

OBSERVED RESULT
On typing the first character, a drop-down appears
On typing the second character kleopatra crashes

EXPECTED RESULT
No crash

SOFTWARE/OS VERSIONS
KDE Plasma Version: 6.2.90
KDE Frameworks Version: 6.10.0
Qt Version: 6.9.0
Graphics Platform: Wayland

ADDITIONAL INFORMATION
No crash report wizard appears

Coredumpctl shows no core dump

Running from a terminal shows:
beginResetModel called on Kleo::UserIDProxyModel(0x5a4c17be18d0) without calling endResetModel first
endResetModel called on Kleo::UserIDProxyModel(0x5a4c17be18d0) without calling beginResetModel first
beginResetModel called on Kleo::UserIDProxyModel(0x5a4c17847010) without calling endResetModel first
endResetModel called on Kleo::UserIDProxyModel(0x5a4c17847010) without calling beginResetModel first
beginResetModel called on Kleo::UserIDProxyModel(0x5a4c17a2ea00) without calling endResetModel first
endResetModel called on Kleo::UserIDProxyModel(0x5a4c17a2ea00) without calling beginResetModel first
beginResetModel called on Kleo::UserIDProxyModel(0x5a4c17a138a0) without calling endResetModel first
endResetModel called on Kleo::UserIDProxyModel(0x5a4c17a138a0) without calling beginResetModel first
beginResetModel called on Kleo::UserIDProxyModel(0x5a4c17be18d0) without calling endResetModel first
beginResetModel called on SortFilterProxyModel(0x5a4c178fec10) without calling endResetModel first
beginResetModel called on SortAndFormatCertificatesProxyModel(0x5a4c17905fe0) without calling endResetModel first
beginResetModel called on CustomItemsProxyModel(0x5a4c17707170) without calling endResetModel first
endResetModel called on Kleo::UserIDProxyModel(0x5a4c17be18d0) without calling beginResetModel first
endResetModel called on SortFilterProxyModel(0x5a4c178fec10) without calling beginResetModel first
endResetModel called on SortAndFormatCertificatesProxyModel(0x5a4c17905fe0) without calling beginResetModel first
endResetModel called on CustomItemsProxyModel(0x5a4c17707170) without calling beginResetModel first
beginResetModel called on Kleo::UserIDProxyModel(0x5a4c17847010) without calling endResetModel first
beginResetModel called on SortFilterProxyModel(0x5a4c17ad9690) without calling endResetModel first
beginResetModel called on SortAndFormatCertificatesProxyModel(0x5a4c175a86f0) without calling endResetModel first
beginResetModel called on CustomItemsProxyModel(0x5a4c17a3efd0) without calling endResetModel first
endResetModel called on Kleo::UserIDProxyModel(0x5a4c17847010) without calling beginResetModel first
endResetModel called on SortFilterProxyModel(0x5a4c17ad9690) without calling beginResetModel first
endResetModel called on SortAndFormatCertificatesProxyModel(0x5a4c175a86f0) without calling beginResetModel first
endResetModel called on CustomItemsProxyModel(0x5a4c17a3efd0) without calling beginResetModel first
beginResetModel called on Kleo::UserIDProxyModel(0x5a4c17a3d5b0) without calling endResetModel first
endResetModel called on Kleo::UserIDProxyModel(0x5a4c17a3d5b0) without calling beginResetModel first
[destroyed object]: error 2: the surface already has a role assigned xdg_popup
The Wayland connection experienced a fatal error: Protocol error
Comment 1 Paul Worrall 2025-01-17 12:42:24 UTC
Tried to get a backtrace using gdb as described at https://community.kde.org/Guidelines_and_HOWTOs/Debugging/How_to_create_useful_crash_reports#Procedure_gdb_and_debuginfod, but that produced nothing also.
Comment 2 Tobias Fella 2025-01-20 10:48:40 UTC
Is this with a "normal" distro version of kleopatra or some AUR/selfbuilt/beta/whatever version?

I suspect that this was fixed recently, but I'm not sure as I can't reproduce it with 24.12.1 yet
Comment 3 Paul Worrall 2025-01-20 11:37:25 UTC
Created attachment 177549 [details]
About Kleopatra dialog

It's from the Arch repo called "kde-unstable" which has the latest beta or Release Candidate of Plasma and Applications.  I've attached a capture of the about screen.
Comment 4 Tobias Fella 2025-01-20 12:32:40 UTC
I can reproduce the crash with arch and KDE-unstable. Since the kleopatra package in kde-unstable is the same one as in the normal arch repo, I don't think it's kleopatra that's doing anything wrong here. Looking at your (and my) log, the part about xdg_popup and wayland seems to be the culprit. kde-unstable does have different qt packages (notable qtdeclarative and qtwayland), so this is most likely an ABI problem that would be fixed by a rebuild of the relevant packages in kde-unstable.