posix_getcwd(): limit to INT_MAX on Windows
It's more to fix a conversion warning during compilation, I don't think that Windows support current working directory larger than 2 GB ...
This commit is contained in:
parent
3719779765
commit
c44f70770b
|
@ -3320,12 +3320,22 @@ posix_getcwd(int use_bytes)
|
|||
Py_BEGIN_ALLOW_THREADS
|
||||
do {
|
||||
buflen += chunk;
|
||||
#ifdef MS_WINDOWS
|
||||
if (buflen > INT_MAX) {
|
||||
PyErr_NoMemory();
|
||||
break;
|
||||
}
|
||||
#endif
|
||||
tmpbuf = PyMem_RawRealloc(buf, buflen);
|
||||
if (tmpbuf == NULL)
|
||||
break;
|
||||
|
||||
buf = tmpbuf;
|
||||
#ifdef MS_WINDOWS
|
||||
cwd = getcwd(buf, (int)buflen);
|
||||
#else
|
||||
cwd = getcwd(buf, buflen);
|
||||
#endif
|
||||
} while (cwd == NULL && errno == ERANGE);
|
||||
Py_END_ALLOW_THREADS
|
||||
|
||||
|
|
Loading…
Reference in New Issue