Fixes handling of long values of PYTHONPATH on Windows.

This commit is contained in:
Steve Dower 2015-05-23 17:34:50 -07:00
parent 7ca13532f3
commit f64b9d5c71
1 changed files with 7 additions and 7 deletions

View File

@ -620,21 +620,21 @@ calculate_path(void)
if (*p == DELIM)
bufsz++; /* number of DELIM plus one */
}
bufsz *= wcsnlen_s(pythonhome, MAXPATHLEN+1);
bufsz *= wcslen(pythonhome);
}
else
bufsz = 0;
bufsz += wcsnlen_s(PYTHONPATH, MAXPATHLEN+1) + 1;
bufsz += wcsnlen_s(argv0_path, MAXPATHLEN+1) + 1;
bufsz += wcslen(PYTHONPATH) + 1;
bufsz += wcslen(argv0_path) + 1;
#ifdef MS_WINDOWS
if (!applocal && userpath)
bufsz += wcsnlen_s(userpath, MAXPATHLEN+1) + 1;
bufsz += wcslen(userpath) + 1;
if (!applocal && machinepath)
bufsz += wcsnlen_s(machinepath, MAXPATHLEN+1) + 1;
bufsz += wcsnlen_s(zip_path, MAXPATHLEN+1) + 1;
bufsz += wcslen(machinepath) + 1;
bufsz += wcslen(zip_path) + 1;
#endif
if (envpath != NULL)
bufsz += wcsnlen_s(envpath, MAXPATHLEN+1) + 1;
bufsz += wcslen(envpath) + 1;
module_search_path = buf = PyMem_RawMalloc(bufsz*sizeof(wchar_t));
if (buf == NULL) {