From 92a3c9c21568a0a4d5955e1694bdcaa1ea09522d Mon Sep 17 00:00:00 2001 From: David GABISON Date: Thu, 22 Dec 2022 12:16:51 +0100 Subject: [PATCH] fix: /task "" no longer works since version 1.3.20 --- launcher/src/CmderLauncher.cpp | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/launcher/src/CmderLauncher.cpp b/launcher/src/CmderLauncher.cpp index fc34eeb..9f033c3 100644 --- a/launcher/src/CmderLauncher.cpp +++ b/launcher/src/CmderLauncher.cpp @@ -425,11 +425,6 @@ void StartCmder(std::wstring path = L"", bool is_single_mode = false, std::wstr swprintf_s(args, L"%s /single", args); } - if (!streqi(cmderTask.c_str(), L"")) - { - swprintf_s(args, L"%s /run {%s}", args, cmderTask.c_str()); - } - if (!streqi(cmderTitle.c_str(), L"")) { swprintf_s(args, L"%s /title \"%s\"", args, cmderTitle.c_str()); @@ -445,6 +440,14 @@ void StartCmder(std::wstring path = L"", bool is_single_mode = false, std::wstr swprintf_s(args, L"%s %s", args, cmderConEmuArgs.c_str()); } + // The `/run` arg and its value MUST be the last arg of ConEmu + // see : https://conemu.github.io/en/ConEmuArgs.html + // > This must be the last used switch (excepting -new_console and -cur_console) + if (!streqi(cmderTask.c_str(), L"")) + { + swprintf_s(args, L"%s /run {%s}", args, cmderTask.c_str()); + } + SetEnvironmentVariable(L"CMDER_ROOT", exeDir); if (wcscmp(userConfigDirPath, configDirPath) != 0) {