]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
suppress . and .. in listdir return value
authorGuido van Rossum <guido@python.org>
Tue, 18 Jul 1995 18:16:52 +0000 (18:16 +0000)
committerGuido van Rossum <guido@python.org>
Tue, 18 Jul 1995 18:16:52 +0000 (18:16 +0000)
Modules/posixmodule.c

index 3d4bdcf9eae65db935a292cb746c9dc1e53dd1b5..ffddd09154a42a406dbcf09aa1682415e4d19a5e 100644 (file)
@@ -408,6 +408,11 @@ posix_listdir(self, args)
                return posix_error();
        }
        do {
+               if (FileData.cFileName[0] == '.' &&
+                   (FileData.cFileName[1] == '\0' ||
+                    FileData.cFileName[1] == '.' &&
+                    FileData.cFileName[2] == '\0'))
+                       continue;
                v = newstringobject(FileData.cFileName);
                if (v == NULL) {
                        DECREF(d);
@@ -449,6 +454,10 @@ posix_listdir(self, args)
                return NULL;
        }
        while ((ep = readdir(dirp)) != NULL) {
+               if (ep->d_name[0] == '.' &&
+                   (NAMLEN(ep) == 1 ||
+                    ep->d_name[1] == '.' && NAMLEN(ep) == 2))
+                       continue;
                v = newsizedstringobject(ep->d_name, NAMLEN(ep));
                if (v == NULL) {
                        DECREF(d);