72 lines
2.6 KiB
Diff
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
|
|
|