From 9f23178e76285108438ab88d53ef575674c6a213 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ricardo=20Lu=C3=ADs=20Vaz=20Silva?= Date: Wed, 14 May 2025 14:58:35 -0300 Subject: [PATCH] save extraArgs to CVar for easier testing --- src/d_iwad.cpp | 6 +++++- src/launcher/launcherwindow.cpp | 1 + 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/src/d_iwad.cpp b/src/d_iwad.cpp index d326bce64..fe490f014 100644 --- a/src/d_iwad.cpp +++ b/src/d_iwad.cpp @@ -607,6 +607,8 @@ FString FIWadManager::IWADPathFileSearch(const FString &file) return ""; } +CVAR(String, extra_args, "", CVAR_ARCHIVE | CVAR_GLOBALCONFIG); + int FIWadManager::IdentifyVersion (std::vector&wadfiles, const char *iwad, const char *zdoom_wad, const char *optional_wad) { const char *iwadparm = Args->CheckValue ("-iwad"); @@ -871,13 +873,15 @@ int FIWadManager::IdentifyVersion (std::vector&wadfiles, const char if (autoloadbrightmaps) flags |= 4; if (autoloadwidescreen) flags |= 8; - FString extraArgs; + FString extraArgs = *extra_args; pick = I_PickIWad(&wads[0], (int)wads.Size(), queryiwad, pick, flags, extraArgs); if (pick >= 0) { extraArgs.StripLeftRight(); + extra_args = extraArgs.GetChars(); + if(extraArgs.Len() > 0) { Args->AppendArgsString(extraArgs); diff --git a/src/launcher/launcherwindow.cpp b/src/launcher/launcherwindow.cpp index 68142536c..c4b84df82 100644 --- a/src/launcher/launcherwindow.cpp +++ b/src/launcher/launcherwindow.cpp @@ -20,6 +20,7 @@ int LauncherWindow::ExecModal(WadStuff* wads, int numwads, int defaultiwad, int* auto launcher = std::make_unique(wads, numwads, defaultiwad, autoloadflags); launcher->SetFrameGeometry((screenSize.width - windowWidth) * 0.5, (screenSize.height - windowHeight) * 0.5, windowWidth, windowHeight); + if(extraArgs) launcher->PlayGame->SetExtraArgs(extraArgs->GetChars()); launcher->Show(); DisplayWindow::RunLoop();