summaryrefslogtreecommitdiffstats
path: root/src/corelib/plugin/qlibrary_unix.cpp
diff options
context:
space:
mode:
authorJacek Poplawski <jacek.poplawski@qt.io>2024-02-02 12:43:56 +0100
committerJacek Poplawski <jacek.poplawski@qt.io>2024-02-08 14:17:49 +0100
commitef5ab6e00664caf0af23b21593f809d718c9dfc7 (patch)
tree7f4d746b000cc5c41a44c96a78c9516afb4cd522 /src/corelib/plugin/qlibrary_unix.cpp
parent141cd13ab44d867439a66ee3328914f1394f7e06 (diff)
Disable unloading libraries on VxWorks
Unloading plugins after each test case in QtDeclarative autotests leads to crashes (signal 11) during type registration in subsequent test cases. The issue arises due to the unloading process, where unloading and then re-registering types in the next test case leads to sig11. Disabling the unloading of libraries prevents the crashes. Pick-to: 6.7 Task-number: QTBUG-115777 Change-Id: I6712f687134fd452fb0b962363a8f0fde85344ff Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Diffstat (limited to 'src/corelib/plugin/qlibrary_unix.cpp')
-rw-r--r--src/corelib/plugin/qlibrary_unix.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/corelib/plugin/qlibrary_unix.cpp b/src/corelib/plugin/qlibrary_unix.cpp
index 84f572a003..1e088bcf6b 100644
--- a/src/corelib/plugin/qlibrary_unix.cpp
+++ b/src/corelib/plugin/qlibrary_unix.cpp
@@ -262,6 +262,7 @@ bool QLibraryPrivate::load_sys()
bool QLibraryPrivate::unload_sys()
{
+#if !defined(Q_OS_VXWORKS) // Unloading on VxWorks causes crashes in QtDeclarative autotests
if (dlclose(pHnd.loadAcquire())) {
#if defined (Q_OS_QNX) // Workaround until fixed in QNX; fixes crash in
char *error = dlerror(); // QtDeclarative auto test "qqmlenginecleanup" for instance
@@ -275,6 +276,7 @@ bool QLibraryPrivate::unload_sys()
return false;
}
errorString.clear();
+#endif
return true;
}