Bug 458679

Summary: System settings app doesn't shutdown properly, when the close button is used when "Download new themes" dialog was present.
Product: [Frameworks and Libraries] frameworks-knewstuff Reporter: jakubby
Component: generalAssignee: Dan Leinir Turthra Jensen <admin>
Status: RESOLVED FIXED    
Severity: normal CC: alexander.lohnau, jakubby, kdelibs-bugs-null, nate
Priority: NOR    
Version First Reported In: 5.97.0   
Target Milestone: ---   
Platform: Arch Linux   
OS: Linux   
Latest Commit: Version Fixed/Implemented In: 5.98
Sentry Crash Report:
Attachments: System settings process doesn't shutdown properly(yes I tried waiting a minute).

Description jakubby 2022-09-03 23:09:38 UTC
Created attachment 151811 [details]
System settings process doesn't shutdown properly(yes I tried waiting a minute).

SUMMARY
The current instance of system settings application disappears, but it never shutsdown the system settings process.
This makes it impossible to launch new instances of settings, even though visibly to the user the app has shutdown properly.

STEPS TO REPRODUCE
1. Appearance -> Get New Global Themes...
2. Click close button on the parent window.

OBSERVED RESULT
The current instance of system settings application disappears, but it never shutsdown the system settings process.
This makes it impossible to launch new instances of settings, even though visibly to the user the app has shutdown properly.

EXPECTED RESULT
The system settings process shutsdown after closing the parent window, while child window was present.

SOFTWARE/OS VERSIONS
Linux/KDE Plasma:  5.19.5-zen
KDE Plasma Version:  5.25.4
KDE Frameworks Version:  5.97.0
Qt Version: 5.15.5+kde+r180-1

Additional Information:
(gdb) attach 33837
(gdb) bt
#0  0x00007f7d01313e9f in poll () at /usr/lib/libc.so.6
#1  0x00007f7d0036ef68 in  () at /usr/lib/libglib-2.0.so.0
#2  0x00007f7d00316392 in g_main_context_iteration () at /usr/lib/libglib-2.0.so.0
#3  0x00007f7d01ad825c in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#4  0x00007f7d01a8611c in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) ()
    at /usr/lib/libQt5Core.so.5
#5  0x00007f7d01a90c49 in QCoreApplication::exec() () at /usr/lib/libQt5Core.so.5
#6  0x0000562e36fefb7a in  ()
#7  0x00007f7d0123c2d0 in  () at /usr/lib/libc.so.6
#8  0x00007f7d0123c38a in __libc_start_main () at /usr/lib/libc.so.6
#9  0x0000562e36ff04d5 in  ()
Comment 1 Nate Graham 2022-09-08 23:57:53 UTC
Already fixed in Frameworks 5.98!
Comment 2 Nate Graham 2022-09-08 23:58:30 UTC
...or 5.26. I can't 100% remember which one. But I do remember that this specific thing was fixed recently, and I can't reproduce it anymore myself using git master software.