]> granicus.if.org Git - python/commitdiff
Handle os.listdir("") case correctly on Windows. Closes bug 500705.
authorNeil Schemenauer <nascheme@enme.ucalgary.ca>
Fri, 22 Mar 2002 20:51:58 +0000 (20:51 +0000)
committerNeil Schemenauer <nascheme@enme.ucalgary.ca>
Fri, 22 Mar 2002 20:51:58 +0000 (20:51 +0000)
Modules/posixmodule.c

index 4d9408a024ecb0ee68f3d5864ba3a8ee70276fdf..46e145f484c66867c7ac2a7a22a75cf538d4a7ce 100644 (file)
@@ -980,14 +980,15 @@ posix_listdir(PyObject *self, PyObject *args)
        char namebuf[MAX_PATH*2+5];
        char *bufptr = namebuf;
        int len = sizeof(namebuf)/sizeof(namebuf[0]);
-       char ch;
 
        if (!PyArg_ParseTuple(args, "et#:listdir",
                              Py_FileSystemDefaultEncoding, &bufptr, &len))
                return NULL;
-       ch = namebuf[len-1];
-       if (ch != SEP && ch != ALTSEP && ch != ':')
-               namebuf[len++] = '/';
+       if (len > 0) {
+               char ch = namebuf[len-1];
+               if (ch != SEP && ch != ALTSEP && ch != ':')
+                       namebuf[len++] = '/';
+       }
        strcpy(namebuf + len, "*.*");
 
        if ((d = PyList_New(0)) == NULL)