[Python-checkins] cpython (merge 3.4 -> default): 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:32 CEST 2014


http://hg.python.org/cpython/rev/6a71d3c79653
changeset:   92080:6a71d3c79653
parent:      92077:d2041159e8ed
parent:      92079:5033589a752d
user:        Serhiy Storchaka <storchaka at gmail.com>
date:        Tue Aug 12 12:56:25 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
@@ -115,6 +115,9 @@
 Library
 -------
 
+- Issue #17923: glob() patterns ending with a slash no longer match non-dirs on
+  AIX.  Based on patch by Delhallt.
+
 - Issue #21725: Added support for RFC 6531 (SMTPUTF8) in smtpd.
 
 - Issue #22176: Update the ctypes module's libffi to v3.1.  This release

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


More information about the Python-checkins mailing list