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>
bb10
Jacek Poplawski 2024-02-02 12:43:56 +01:00
parent 141cd13ab4
commit ef5ab6e006
1 changed files with 2 additions and 0 deletions

View File

@ -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;
}