gui/main: fix Linux/macOS build, applicationFilePath was declared under WINDOWS_SYS only

Commit e63584843 declared applicationFilePath inside the WINDOWS_SYS
block but uses it unconditionally to fill conf.main_executable_path,
so every non-Windows GUI build fails with 'applicationFilePath was
not declared in this scope'. Declare it at function scope, seeded
from argv[0] (the previous non-Windows behaviour); Windows still
overrides it with QCoreApplication::applicationFilePath().

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
jolavillette 2026-09-04 07:53:07 +02:00
parent 799d4c9197
commit 52cefc693e

View File

@ -299,6 +299,9 @@ QString filedialog_existing_directory_hook(QWidget *parent, const QString &capti
int main(int argc, char *argv[])
{
/* On Windows argv[0] does not always contain the full path, so the real
one is fetched below through QCoreApplication::applicationFilePath(). */
QString applicationFilePath = QString::fromLocal8Bit(argv[0]);
#ifdef WINDOWS_SYS
// The current directory of the application is changed when using the native dialog on Windows
// This is a quick fix until libretroshare is using a absolute path in the portable Version
@ -326,7 +329,6 @@ int main(int argc, char *argv[])
qt_use_native_dialogs = false;
#endif
QString applicationFilePath;
{
/* Set the current directory to the application dir,
because the start dir with autostart from the registry run key is not the exe dir */