From 4bd63f66cd4f6e8d549f88ae0f4b0106d522b6bb Mon Sep 17 00:00:00 2001 From: Steve Dower Date: Wed, 19 Oct 2022 23:00:09 +0100 Subject: [PATCH] gh-98414: py.exe launcher does not use defaults for -V:company/ option (GH-98460) --- Lib/test/test_launcher.py | 7 +++++++ .../Windows/2022-10-19-19-35-37.gh-issue-98414.FbHZuS.rst | 3 +++ PC/launcher2.c | 1 + 3 files changed, 11 insertions(+) create mode 100644 Misc/NEWS.d/next/Windows/2022-10-19-19-35-37.gh-issue-98414.FbHZuS.rst diff --git a/Lib/test/test_launcher.py b/Lib/test/test_launcher.py index be0cd90c7906f5..432a44622b5f00 100644 --- a/Lib/test/test_launcher.py +++ b/Lib/test/test_launcher.py @@ -369,6 +369,13 @@ def test_filter_to_company(self): self.assertEqual(company, data["env.company"]) self.assertEqual("3.100", data["env.tag"]) + def test_filter_to_company_with_default(self): + company = "PythonTestSuite" + data = self.run_py([f"-V:{company}/"], env=dict(PY_PYTHON="3.0")) + self.assertEqual("X.Y.exe", data["LaunchCommand"]) + self.assertEqual(company, data["env.company"]) + self.assertEqual("3.100", data["env.tag"]) + def test_filter_to_tag(self): company = "PythonTestSuite" data = self.run_py([f"-V:3.100"]) diff --git a/Misc/NEWS.d/next/Windows/2022-10-19-19-35-37.gh-issue-98414.FbHZuS.rst b/Misc/NEWS.d/next/Windows/2022-10-19-19-35-37.gh-issue-98414.FbHZuS.rst new file mode 100644 index 00000000000000..df07b7f547df96 --- /dev/null +++ b/Misc/NEWS.d/next/Windows/2022-10-19-19-35-37.gh-issue-98414.FbHZuS.rst @@ -0,0 +1,3 @@ +Fix :file:`py.exe` launcher handling of ``-V:/`` option when +default preferences have been set in environment variables or configuration +files. diff --git a/PC/launcher2.c b/PC/launcher2.c index 23eaa19dde38e8..1f6f97b82092b9 100644 --- a/PC/launcher2.c +++ b/PC/launcher2.c @@ -653,6 +653,7 @@ parseCommandLine(SearchInfo *search) search->tag = argStart; } search->tagLength = (int)(tail - search->tag); + search->allowDefaults = false; search->restOfCmdLine = tail; } else if (MATCHES(L"0") || MATCHES(L"-list")) { search->list = true;