equal
deleted
inserted
replaced
|
1 diff --git Python-2.6.4/Modules/posixmodule.c Python-2.6.4/Modules/posixmodule.c |
|
2 --- Python-2.6.4/Modules/posixmodule.c |
|
3 +++ Python-2.6.4/Modules/posixmodule.c |
|
4 @@ -1978,6 +1978,8 @@ |
|
5 char *res = NULL; |
|
6 PyObject *dynamic_return; |
|
7 |
|
8 + int maxsize = pathconf(".", _PC_PATH_MAX); |
|
9 + |
|
10 Py_BEGIN_ALLOW_THREADS |
|
11 do { |
|
12 bufsize = bufsize + bufsize_incr; |
|
13 @@ -1994,7 +1996,7 @@ |
|
14 if (res == NULL) { |
|
15 free(tmpbuf); |
|
16 } |
|
17 - } while ((res == NULL) && (errno == ERANGE)); |
|
18 + } while ((res == NULL) && (errno == ERANGE) && (bufsize < maxsize)); |
|
19 Py_END_ALLOW_THREADS |
|
20 |
|
21 if (res == NULL) |