From: Tim Peters <tim.peters@gmail.com> Date: Wed, 1 Mar 2006 04:35:45 +0000 (+0000) Subject: Repair mangled code in the Windows flavor of X-Git-Tag: v2.5a0~450 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=67d70eb957faf61e0cba548fcad374ec361429c4;p=python Repair mangled code in the Windows flavor of posix__getfullpathname(). In partial answer to the now-deleted XXX comment: /* XXX(twouters) Why use 'et#' here at all? insize isn't used */ `insize` is an input parameter too, and it was left uninitialized, leading to seemingly random failures. --- diff --git a/Modules/posixmodule.c b/Modules/posixmodule.c index efe5074135..6949c901b7 100644 --- a/Modules/posixmodule.c +++ b/Modules/posixmodule.c @@ -1901,7 +1901,7 @@ posix__getfullpathname(PyObject *self, PyObject *args) /* assume encoded strings wont more than double no of chars */ char inbuf[MAX_PATH*2]; char *inbufp = inbuf; - Py_ssize_t insize; + Py_ssize_t insize = sizeof(inbuf); char outbuf[MAX_PATH*2]; char *temp; #ifdef Py_WIN_WIDE_FILENAMES @@ -1921,7 +1921,6 @@ posix__getfullpathname(PyObject *self, PyObject *args) PyErr_Clear(); } #endif - /* XXX(twouters) Why use 'et#' here at all? insize isn't used */ if (!PyArg_ParseTuple (args, "et#:_getfullpathname", Py_FileSystemDefaultEncoding, &inbufp, &insize))