Bug 498795

Summary: Crash when typing email address in "Encrypt for others"
Product: [Applications] kleopatra Reporter: Paul Worrall <p.r.worrall>
Component: generalAssignee: Ingo Klöcker <kloecker>
Status: RESOLVED DOWNSTREAM    
Severity: crash CC: aheinecke, fella, kdepim-bugs, mutz
Priority: NOR    
Version First Reported In: 4.0.0.241201   
Target Milestone: ---   
Platform: Arch Linux   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:
Attachments: About Kleopatra dialog

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.