pythonrun.c: fix Py_GetPythonHome(), use Py_ARRAY_LENGTH() to get the size of

the env_home buffer, not PATH_MAX+1. env_home is declared using MAXPATHLEN+1,
and PATH_MAX is not declared on IRIX.
This commit is contained in:
Victor Stinner 2013-11-15 17:09:24 +01:00
parent 8bdc130121
commit 2f5bbc6a12

View file

@ -817,8 +817,9 @@ Py_GetPythonHome(void)
if (home == NULL && !Py_IgnoreEnvironmentFlag) {
char* chome = Py_GETENV("PYTHONHOME");
if (chome) {
size_t r = mbstowcs(env_home, chome, PATH_MAX+1);
if (r != (size_t)-1 && r <= PATH_MAX)
size_t size = Py_ARRAY_LENGTH(env_home);
size_t r = mbstowcs(env_home, chome, size);
if (r != (size_t)-1 && r < size)
home = env_home;
}