summaryrefslogtreecommitdiffstats
path: root/src/corelib/plugin
diff options
context:
space:
mode:
authorFushan Wen <qydwhotmail@gmail.com>2022-10-02 10:34:40 +0800
committerFushan Wen <qydwhotmail@gmail.com>2022-10-10 09:49:23 +0000
commit2093d65a80b2c4bb6baa26062fc9c18d19b24c07 (patch)
tree03bfc140bbaa8804e393b4424bf76e698bfdf1a8 /src/corelib/plugin
parent30b881b3946a0a09da03d1d50f46251b33851d1b (diff)
[Linux] Remove workaround for glibc to actually unload a library
The workaround was added to fix a bug in glibc prior to 2.25, which was released on 2017-02-05. Since the supported platforms of Qt6 at least have glibc 2.26 (SUSE Linux Enterprise Server 15 SP2), it's time to remove the workaround. See also: http://sourceware.org/bugzilla/show_bug.cgi?id=11941 Pick-to: 6.4 Change-Id: Ia2aab5b0a512c44d4a4312877a0177b6b5df6428 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
Diffstat (limited to 'src/corelib/plugin')
-rw-r--r--src/corelib/plugin/qlibrary.cpp7
1 files changed, 1 insertions, 6 deletions
diff --git a/src/corelib/plugin/qlibrary.cpp b/src/corelib/plugin/qlibrary.cpp
index 6a3f13bb81..79725e258e 100644
--- a/src/corelib/plugin/qlibrary.cpp
+++ b/src/corelib/plugin/qlibrary.cpp
@@ -341,12 +341,7 @@ inline void QLibraryStore::cleanup()
if (lib->libraryUnloadCount.loadRelaxed() > 0) {
Q_ASSERT(lib->pHnd.loadRelaxed());
lib->libraryUnloadCount.storeRelaxed(1);
-#ifdef __GLIBC__
- // glibc has a bug in unloading from global destructors
- // see https://bugzilla.novell.com/show_bug.cgi?id=622977
- // and http://sourceware.org/bugzilla/show_bug.cgi?id=11941
- lib->unload(QLibraryPrivate::NoUnloadSys);
-#elif defined(Q_OS_DARWIN)
+#if defined(Q_OS_DARWIN)
// We cannot fully unload libraries, as we don't know if there are
// lingering references (in system threads e.g.) to Objective-C classes
// defined in the library.