[plasmashell] [Bug 510785] QThreadStorage entry n destroyed before end of thread errors on command line after Qt applications exit normally
https://bugs.kde.org/show_bug.cgi?id=510785 Thiago Macieira changed: What|Removed |Added Version|QT 6.11.1,6.12.0|Qt 6.12.0,6.11.1,6.10.3 Fixed/Implemented|| In|| -- You are receiving this mail because: You are watching all bug changes.
[plasmashell] [Bug 510785] QThreadStorage entry n destroyed before end of thread errors on command line after Qt applications exit normally
https://bugs.kde.org/show_bug.cgi?id=510785 TraceyC changed: What|Removed |Added Version||QT 6.11.1,6.12.0 Fixed/Implemented|| In|| -- You are receiving this mail because: You are watching all bug changes.
[plasmashell] [Bug 510785] QThreadStorage entry n destroyed before end of thread errors on command line after Qt applications exit normally
https://bugs.kde.org/show_bug.cgi?id=510785 --- Comment #17 from Christoph Cullmann --- (In reply to Thiago Macieira from comment #15) > Submitted a workaround in Qt. Thanks! -- You are receiving this mail because: You are watching all bug changes.
[plasmashell] [Bug 510785] QThreadStorage entry n destroyed before end of thread errors on command line after Qt applications exit normally
https://bugs.kde.org/show_bug.cgi?id=510785 --- Comment #16 from TraceyC --- Thanks for working through this, it's going to avoid a lot of users submitting these error lines in unrelated bug reports. -- You are receiving this mail because: You are watching all bug changes.
[plasmashell] [Bug 510785] QThreadStorage entry n destroyed before end of thread errors on command line after Qt applications exit normally
https://bugs.kde.org/show_bug.cgi?id=510785 --- Comment #15 from Thiago Macieira --- Submitted a workaround in Qt. -- You are receiving this mail because: You are watching all bug changes.
[plasmashell] [Bug 510785] QThreadStorage entry n destroyed before end of thread errors on command line after Qt applications exit normally
https://bugs.kde.org/show_bug.cgi?id=510785 --- Comment #14 from Christoph Cullmann --- KAboutData::processCommandLine shows the issue for ❯ kwrite --author qt.multimedia.symbolsresolver: Couldn't load pipewire-0.3 library qt.multimedia.symbolsresolver: Couldn't resolve pipewire-0.3 symbols kwrite was written by: Christoph Cullmann Dominik Haumann Sven Brauch Kåre Särs Waqar Ahmed Anders Lund Joseph Wenninger Hamish Rodda Alexander Neundorf Waldo Bastian Charles Samuels Matt Newell Michael Bartl Michael McCallum Jochen Wilhemly Michael Koch Christian Gebauer Simon Hausmann Glen Parker Scott Manson John Firebaugh Pablo Martín Gerald Senarclens de Grancy Please use https://bugs.kde.org to report bugs. QThreadStorage: entry 1 destroyed before end of thread 0x55744d9dfc20 QThreadStorage: entry 0 destroyed before end of thread 0x55744d9dfc20 If we use the non-cleanup _exit instead, we avoid that, naturally, that seems not like a good fix. -- You are receiving this mail because: You are watching all bug changes.
[plasmashell] [Bug 510785] QThreadStorage entry n destroyed before end of thread errors on command line after Qt applications exit normally
https://bugs.kde.org/show_bug.cgi?id=510785 --- Comment #13 from Christoph Cullmann --- (In reply to Christoph Cullmann from comment #12) > (In reply to Thiago Macieira from comment #11) > > From QCommandLineParser::showVersion() > > The code there does some better cleanup, should we try to do the same in our > framework? Ok, I see, that crashes more or less in QCommandLineParser::showVersion() like we crash in KAboutData::processCommandLine for the --help stuff. -- You are receiving this mail because: You are watching all bug changes.
[plasmashell] [Bug 510785] QThreadStorage entry n destroyed before end of thread errors on command line after Qt applications exit normally
https://bugs.kde.org/show_bug.cgi?id=510785 --- Comment #12 from Christoph Cullmann --- (In reply to Thiago Macieira from comment #11) > From QCommandLineParser::showVersion() The code there does some better cleanup, should we try to do the same in our framework? -- You are receiving this mail because: You are watching all bug changes.
[plasmashell] [Bug 510785] QThreadStorage entry n destroyed before end of thread errors on command line after Qt applications exit normally
https://bugs.kde.org/show_bug.cgi?id=510785 --- Comment #11 from Thiago Macieira --- >From QCommandLineParser::showVersion() -- You are receiving this mail because: You are watching all bug changes.
[plasmashell] [Bug 510785] QThreadStorage entry n destroyed before end of thread errors on command line after Qt applications exit normally
https://bugs.kde.org/show_bug.cgi?id=510785 --- Comment #10 from Christoph Cullmann --- (In reply to Thiago Macieira from comment #9) > Most likely, this is the result of a Q_GLOBAL_STATIC(QThreadStorage, y) > that was already destroyed. It's difficult to get this right because > Q_GLOBAL_STATIC will destroy early, before the thread exit. But it's also > the right thing to do. > > The other thing is this warning is suppressed when > QCoreApplication::instance() is null. So why is it not null during > application exit? I think the issue is that stuff like 'kate --version' triggers plain exit. (same for other variants that exit early) -- You are receiving this mail because: You are watching all bug changes.
[plasmashell] [Bug 510785] QThreadStorage entry n destroyed before end of thread errors on command line after Qt applications exit normally
https://bugs.kde.org/show_bug.cgi?id=510785 TraceyC changed: What|Removed |Added See Also||https://bugs.kde.org/show_b ||ug.cgi?id=502874 -- You are receiving this mail because: You are watching all bug changes.
[plasmashell] [Bug 510785] QThreadStorage entry n destroyed before end of thread errors on command line after Qt applications exit normally
https://bugs.kde.org/show_bug.cgi?id=510785 Thiago Macieira changed: What|Removed |Added CC||[email protected] --- Comment #9 from Thiago Macieira --- Most likely, this is the result of a Q_GLOBAL_STATIC(QThreadStorage, y) that was already destroyed. It's difficult to get this right because Q_GLOBAL_STATIC will destroy early, before the thread exit. But it's also the right thing to do. The other thing is this warning is suppressed when QCoreApplication::instance() is null. So why is it not null during application exit? -- You are receiving this mail because: You are watching all bug changes.
[plasmashell] [Bug 510785] QThreadStorage entry n destroyed before end of thread errors on command line after Qt applications exit normally
https://bugs.kde.org/show_bug.cgi?id=510785 TraceyC changed: What|Removed |Added Component|general |general Version First|25.08.2 |6.4.5 Reported In|| Product|konsole |plasmashell Target Milestone|--- |1.0 CC||[email protected], ||[email protected] Assignee|[email protected] |[email protected] URL||https://qt-project.atlassia ||n.net/browse/QTBUG-144862 Summary|QThreadStorage errors after |QThreadStorage entry n |running "konsole --help"|destroyed before end of ||thread errors on command ||line after Qt applications ||exit normally --- Comment #8 from TraceyC --- The same lines are shown with just konsole --help and other programs, so it's not specifically a konsole bug. It looks like a Qt bug. I've opened a bug with the Qt folks for this. https://qt-project.atlassian.net/browse/QTBUG-144862 Also see https://discuss.kde.org/t/qthreadstorage-spamming/34576 These lines are emitted by plasma-discover as well, with just the --help flag. Also with gwenview --help, dolphin --help, digikam --help and probably others. This probably affects any Qt app. My system has Qt 6.10.2 ex: % plasma-discover --help Usage: plasma-discover [options] urls An application explorer (snip) Arguments: urlsSupports appstream: url scheme QThreadStorage: entry 2 destroyed before end of thread 0x5576d11c9c40 QThreadStorage: entry 1 destroyed before end of thread 0x5576d11c9c40 A quick Bugzilla search shows 25 open bugs with the same string, appearing in comments as early as April 2025 https://bugs.kde.org/buglist.cgi?bug_status=UNCONFIRMED&bug_status=CONFIRMED&bug_status=ASSIGNED&bug_status=REOPENED&f0=OP&f1=OP&f2=product&f3=component&f4=alias&f5=short_desc&f7=content&f8=CP&f9=CP&j1=OR&list_id=3458084&longdesc=destroyed%20before%20end%20of%20thread&longdesc_type=substring&o2=substring&o3=substring&o4=substring&o5=substring&o6=substring&o7=matches&query_format=advanced&v2=QThreadStorage&v3=QThreadStorage&v4=QThreadStorage&v5=QThreadStorage&v6=QThreadStorage&v7=%22QThreadStorage%22 -- You are receiving this mail because: You are watching all bug changes.
