[Python-checkins] cpython (3.4): Issue #17923: glob() patterns ending with a slash no longer match non-dirs on

serhiy.storchaka python-checkins at python.org
Tue Aug 12 11:58:30 CEST 2014


http://hg.python.org/cpython/rev/5033589a752d
changeset:   92079:5033589a752d
branch:      3.4
parent:      92076:df832e0c6d7d
user:        Serhiy Storchaka <storchaka at gmail.com>
date:        Tue Aug 12 12:55:12 2014 +0300
summary:
  Issue #17923: glob() patterns ending with a slash no longer match non-dirs on
AIX.  Based on patch by Delhallt.

files:
  Lib/glob.py |  11 ++++++++---
  Misc/NEWS   |   3 +++
  2 files changed, 11 insertions(+), 3 deletions(-)


diff --git a/Lib/glob.py b/Lib/glob.py
--- a/Lib/glob.py
+++ b/Lib/glob.py
@@ -26,11 +26,16 @@
     patterns.
 
     """
+    dirname, basename = os.path.split(pathname)
     if not has_magic(pathname):
-        if os.path.lexists(pathname):
-            yield pathname
+        if basename:
+            if os.path.lexists(pathname):
+                yield pathname
+        else:
+            # Patterns ending with a slash should match only directories
+            if os.path.isdir(dirname):
+                yield pathname
         return
-    dirname, basename = os.path.split(pathname)
     if not dirname:
         yield from glob1(None, basename)
         return
diff --git a/Misc/NEWS b/Misc/NEWS
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -27,6 +27,9 @@
 Library
 -------
 
+- Issue #17923: glob() patterns ending with a slash no longer match non-dirs on
+  AIX.  Based on patch by Delhallt.
+
 - Issue #21121: Don't force 3rd party C extensions to be built with
   -Werror=declaration-after-statement.
 

-- 
Repository URL: http://hg.python.org/cpython


More information about the Python-checkins mailing list