◐ Shell
clean mode source ↗

[3.6] bpo-39401: Avoid unsafe DLL load on Windows 7 and earlier (GH-18231) by zooba · Pull Request #18233 · python/cpython

Expand Up @@ -224,7 +224,8 @@ static void join(wchar_t *buffer, const wchar_t *stuff) { if (_PathCchCombineEx_Initialized == 0) { HMODULE pathapi = LoadLibraryW(L"api-ms-win-core-path-l1-1-0.dll"); HMODULE pathapi = LoadLibraryExW(L"api-ms-win-core-path-l1-1-0.dll", NULL, LOAD_LIBRARY_SEARCH_SYSTEM32); if (pathapi) _PathCchCombineEx = (PPathCchCombineEx)GetProcAddress(pathapi, "PathCchCombineEx"); else Expand All @@ -249,7 +250,8 @@ static PPathCchCanonicalizeEx _PathCchCanonicalizeEx; static void canonicalize(wchar_t *buffer, const wchar_t *path) { if (_PathCchCanonicalizeEx_Initialized == 0) { HMODULE pathapi = LoadLibraryW(L"api-ms-win-core-path-l1-1-0.dll"); HMODULE pathapi = LoadLibraryExW(L"api-ms-win-core-path-l1-1-0.dll", NULL, LOAD_LIBRARY_SEARCH_SYSTEM32); if (pathapi) { _PathCchCanonicalizeEx = (PPathCchCanonicalizeEx)GetProcAddress(pathapi, "PathCchCanonicalizeEx"); } Expand Down