From b30c594d5c74daf4707ba64157bee92593148151 Mon Sep 17 00:00:00 2001 From: Phil Elson Date: Wed, 15 Jan 2025 10:52:43 +0100 Subject: [PATCH] Remove realpath branch in getpath - the readlink code before is always taking precedence --- Modules/getpath.c | 31 ------------------------------- 1 file changed, 31 deletions(-) diff --git a/Modules/getpath.c b/Modules/getpath.c index 2d3c9757298d16..be249b6a085619 100644 --- a/Modules/getpath.c +++ b/Modules/getpath.c @@ -478,37 +478,6 @@ getpath_realpath(PyObject *Py_UNUSED(self) , PyObject *args) PyMem_RawFree((void *)path); return r; -#elif defined(HAVE_REALPATH) - PyObject *r = NULL; - struct stat st; - const char *narrow = NULL; - wchar_t *path = PyUnicode_AsWideCharString(pathobj, NULL); - if (!path) { - goto done; - } - narrow = Py_EncodeLocale(path, NULL); - if (!narrow) { - PyErr_NoMemory(); - goto done; - } - if (lstat(narrow, &st)) { - PyErr_SetFromErrno(PyExc_OSError); - goto done; - } - if (!S_ISLNK(st.st_mode)) { - r = Py_NewRef(pathobj); - goto done; - } - wchar_t resolved[MAXPATHLEN+1]; - if (_Py_wrealpath(path, resolved, MAXPATHLEN) == NULL) { - PyErr_SetFromErrno(PyExc_OSError); - } else { - r = PyUnicode_FromWideChar(resolved, -1); - } -done: - PyMem_Free((void *)path); - PyMem_Free((void *)narrow); - return r; #elif defined(MS_WINDOWS) HANDLE hFile; wchar_t resolved[MAXPATHLEN+1];