From 2ba01c7ace47c7b8f4b9e1baf8e4b5e2eeb87703 Mon Sep 17 00:00:00 2001 From: Assam Boudjelthia Date: Wed, 13 Mar 2024 14:34:36 +0400 Subject: [PATCH] Android: don't add lib prefix to loaded libs unconditionally MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Some libs don't necessarily have the lib prefix in their names, 3rd party libs and Qt for Python might have that, so no need to always add that prefix to loaded libs is the lib name already contains a .so suffix. Fixes: QTBUG-123286 Pick-to: 6.7.0 Change-Id: Ib65215d9b4410c5c9e00aa0642f48ab45c92fe03 Reviewed-by: Shyamnath Premnadh Reviewed-by: Tinja Paavoseppä (cherry picked from commit 4bb4d015f7e855015f8dc32d658518d5ec3556bd) Reviewed-by: Qt Cherry-pick Bot --- .../jar/src/org/qtproject/qt/android/QtLoader.java | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/android/jar/src/org/qtproject/qt/android/QtLoader.java b/src/android/jar/src/org/qtproject/qt/android/QtLoader.java index 4744dfc6167..3a5f9d0d588 100644 --- a/src/android/jar/src/org/qtproject/qt/android/QtLoader.java +++ b/src/android/jar/src/org/qtproject/qt/android/QtLoader.java @@ -495,10 +495,13 @@ public abstract class QtLoader { ArrayList absolutePathLibraries = new ArrayList<>(); for (String libName : libraries) { - if (!libName.startsWith("lib")) - libName = "lib" + libName; - if (!libName.endsWith(".so")) + // Add lib and .so to the lib name only if it doesn't already end with .so, + // this means some names don't necessarily need to have the lib prefix + if (!libName.endsWith(".so")) { libName = libName + ".so"; + libName = "lib" + libName; + } + File file = new File(m_nativeLibrariesDir + libName); absolutePathLibraries.add(file.getAbsolutePath()); }