https://bugs.kde.org/show_bug.cgi?id=408797

Loïc Yhuel <loic.yh...@gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |loic.yh...@gmail.com

--- Comment #4 from Loïc Yhuel <loic.yh...@gmail.com> ---
(In reply to Christoph Feck from comment #1)
> https://cgit.kde.org/kio.git/tree/src/ioslaves/file/file.cpp#n719
> 
> I wonder if ::exit() is really the only way to "deal" with errors. Someone
> familiar with KIO error handling would need to investigate how to do it
> properly.

It has now been removed :
https://cgit.kde.org/kio.git/commit/?id=512967f6f4e887d4a5a0a7da5893055e1c840ce5.

But there is an exit() later in kinit, leading to a crash in
QCoreGlobalData::~QCoreGlobalData, see the backtrace which was attached to
https://bugs.kde.org/show_bug.cgi?id=411441.

The root cause is
https://cgit.kde.org/kio.git/commit/src/ioslaves/file/file.cpp?id=6738a8b2f71c527f30a624b0b560f79d992715d3.
Until Qt 5.12 (https://codereview.qt-project.org/c/qt/qtbase/+/230316), you are
not allowed to delete a QTextCodec.

Since kdeinit does not call QLibrary::unload, the file.so plugin stays in
memory, so you can just do "(void)new LegacyCodec;",
QCoreGlobalData::~QCoreGlobalData will delete it on exit.

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to