From 86ec5c65fe04ece16f3aada5292cc62726062ad0 Mon Sep 17 00:00:00 2001 From: Victor Stinner Date: Thu, 3 Oct 2019 23:17:00 +0200 Subject: bpo-38353: Fix calculate_argv0_path() for symlinks (GH-16549) calculate_argv0_path() must read argv0_path link, not read program_full_path link. --- Modules/getpath.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Modules/getpath.c b/Modules/getpath.c index 4246d4c..fca87c7 100644 --- a/Modules/getpath.c +++ b/Modules/getpath.c @@ -959,7 +959,7 @@ calculate_argv0_path(PyCalculatePath *calculate, const wchar_t *program_full_pat #if HAVE_READLINK wchar_t tmpbuffer[MAXPATHLEN + 1]; const size_t buflen = Py_ARRAY_LENGTH(tmpbuffer); - int linklen = _Py_wreadlink(program_full_path, tmpbuffer, buflen); + int linklen = _Py_wreadlink(argv0_path, tmpbuffer, buflen); while (linklen != -1) { if (_Py_isabs(tmpbuffer)) { /* tmpbuffer should never be longer than MAXPATHLEN, -- cgit v0.12