changeset: 92078:e430973149ed branch: 2.7 parent: 92073:97ed0b51bbc0 user: Serhiy Storchaka date: Tue Aug 12 12:54:55 2014 +0300 files: Lib/glob.py Misc/NEWS description: Issue #17923: glob() patterns ending with a slash no longer match non-dirs on AIX. Based on patch by Delhallt. diff -r 97ed0b51bbc0 -r e430973149ed Lib/glob.py --- a/Lib/glob.py Mon Aug 11 14:58:37 2014 -0500 +++ b/Lib/glob.py Tue Aug 12 12:54:55 2014 +0300 @@ -35,11 +35,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: for name in glob1(os.curdir, basename): yield name diff -r 97ed0b51bbc0 -r e430973149ed Misc/NEWS --- a/Misc/NEWS Mon Aug 11 14:58:37 2014 -0500 +++ b/Misc/NEWS Tue Aug 12 12:54:55 2014 +0300 @@ -19,6 +19,9 @@ Library ------- +- Issue #17923: glob() patterns ending with a slash no longer match non-dirs on + AIX. Based on patch by Delhallt. + - Issue #21975: Fixed crash when using uninitialized sqlite3.Row (in particular when unpickling pickled sqlite3.Row). sqlite3.Row is now initialized in the __new__() method.