Files
MINGW-packages/mingw-w64-python/0134-Revert-PC-launcher.c-Use-function-available-in-origi.patch
2022-06-10 17:54:24 +02:00

72 lines
2.6 KiB
Diff

From 1aa9a02506288f7ae8be50b7f43863dd1878e0ac Mon Sep 17 00:00:00 2001
From: Naveen M K <naveen521kk@gmail.com>
Date: Sat, 19 Mar 2022 15:32:54 +0530
Subject: [PATCH 134/N] Revert "PC/launcher.c: Use function available in
original msvcrt.dll"
This reverts commit 1fb7e56d33a4e9813b67a66995baad3bf16b7320.
---
PC/launcher.c | 30 +++++++++++++-----------------
1 file changed, 13 insertions(+), 17 deletions(-)
diff --git a/PC/launcher.c b/PC/launcher.c
index b8dea55..734e753 100644
--- a/PC/launcher.c
+++ b/PC/launcher.c
@@ -925,7 +925,7 @@ static COMMAND path_command;
static COMMAND * find_on_path(wchar_t * name)
{
wchar_t * pathext;
- size_t requiredSize;
+ size_t varsize;
wchar_t * context = NULL;
wchar_t * extension;
COMMAND * result = NULL;
@@ -941,23 +941,19 @@ static COMMAND * find_on_path(wchar_t * name)
}
}
else {
- _wgetenv_s(&requiredSize, NULL, 0, L"PATHEXT");
- if (requiredSize > 0) {
- pathext = (wchar_t *)malloc(requiredSize * sizeof(wchar_t));
- /* No extension - search using registered extensions. */
- rc = _wgetenv_s(&requiredSize, pathext, requiredSize, L"PATHEXT");
- if (rc == 0) {
- extension = wcstok_s(pathext, L";", &context);
- while (extension) {
- len = SearchPathW(NULL, name, extension, MSGSIZE, path_command.value, NULL);
- if (len) {
- result = &path_command;
- break;
- }
- extension = wcstok_s(NULL, L";", &context);
+ /* No extension - search using registered extensions. */
+ rc = _wdupenv_s(&pathext, &varsize, L"PATHEXT");
+ if (rc == 0) {
+ extension = wcstok_s(pathext, L";", &context);
+ while (extension) {
+ len = SearchPathW(NULL, name, extension, MSGSIZE, path_command.value, NULL);
+ if (len) {
+ result = &path_command;
+ break;
}
- free(pathext);
+ extension = wcstok_s(NULL, L";", &context);
}
+ free(pathext);
}
}
return result;
@@ -1914,7 +1910,7 @@ process(int argc, wchar_t ** argv)
if (_wfopen_s(&f, venv_cfg_path, L"r")) {
error(RC_BAD_VENV_CFG, L"Cannot read '%ls'", venv_cfg_path);
}
- cb = fread(buffer, sizeof(buffer[0]),
+ cb = fread_s(buffer, sizeof(buffer), sizeof(buffer[0]),
sizeof(buffer) / sizeof(buffer[0]), f);
fclose(f);
--
2.36.1