components/python/python26/patches/Python26-15-getcwd.patch
branchs11u3-sru
changeset 7811 9126e6f58cd8
parent 7792 ee802f9b5132
child 7816 79ee06fdecc5
equal deleted inserted replaced
7792:ee802f9b5132 7811:9126e6f58cd8
     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 @@ -1997,6 +1997,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 @@ -2013,7 +2015,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)