https://bugs.kde.org/show_bug.cgi?id=363634
Bug ID: 363634 Summary: KF5 fails to load Windows executables located in the application bin directory Product: frameworks-kinit Version: unspecified Platform: MS Windows OS: MS Windows Status: UNCONFIRMED Severity: major Priority: NOR Component: general Assignee: fa...@kde.org Reporter: mutla...@ikarustech.com CC: kdelibs-b...@kde.org When using emerge under Windows, it bundles all the executables & DLLs of the application and its dependencies in the bin directory of the application. When using emerge --package application, the same image is bundled using the NSIS installer. In several places (for example in kdeinitinterface.cpp, part of KDBusAddons), we have this: QString srv = QStandardPaths::findExecutable(QStringLiteral("kdeinit5")); However, under Windows, Qt only searches the executable in the system $PATH, and not the path from which the application is running. Even though kdeinit5.exe is located in the same bin directory as the running application, the above return an empty string because the current application bin directory is not part of the system path. A solution to this issue is simply to search first in the current path, so the code becomes: QString srv; #ifdef Q_OS_WIN srv = QStandardPaths::findExecutable(QStringLiteral("kdeinit5"), QStringList() << QCoreApplication::applicationDirPath()); #endif if (srv.isEmpty()) srv = QStandardPaths::findExecutable(QStringLiteral("kdeinit5")); But this code only solves the problem for this instance, there are other places in the KDE frameworks that need to address this issue of finding and locating executable files under Windows. Reproducible: Always Steps to Reproduce: 1. See details 2. 3. Actual Results: See Details Expected Results: See Details -- You are receiving this mail because: You are watching all bug changes.