From 0daf2f38cba2276c9a25613b47c46a17db614d6c Mon Sep 17 00:00:00 2001 From: =?utf8?q?Tarek=20Ziad=C3=A9?= Date: Sun, 5 Apr 2009 21:47:02 +0000 Subject: [PATCH] Merged revisions 71280 via svnmerge from svn+ssh://pythondev@svn.python.org/python/trunk ........ r71280 | tarek.ziade | 2009-04-05 23:44:08 +0200 (Sun, 05 Apr 2009) | 1 line Fixed #1491431: distutils.filelist.glob_to_re was broken for some edge cases (detailed in the test ........ --- Lib/distutils/filelist.py | 5 +++-- Lib/distutils/tests/test_filelist.py | 23 +++++++++++++++++++++++ Misc/NEWS | 3 +++ 3 files changed, 29 insertions(+), 2 deletions(-) create mode 100644 Lib/distutils/tests/test_filelist.py diff --git a/Lib/distutils/filelist.py b/Lib/distutils/filelist.py index 6d27cce64f..3ce5635047 100644 --- a/Lib/distutils/filelist.py +++ b/Lib/distutils/filelist.py @@ -304,7 +304,7 @@ def findall (dir = os.curdir): return list -def glob_to_re (pattern): +def glob_to_re(pattern): """Translate a shell-like glob pattern to a regular expression; return a string containing the regex. Differs from 'fnmatch.translate()' in that '*' does not match "special characters" (which are @@ -319,7 +319,8 @@ def glob_to_re (pattern): # character except the special characters. # XXX currently the "special characters" are just slash -- i.e. this is # Unix-only. - pattern_re = re.sub(r'(^|[^\\])\.', r'\1[^/]', pattern_re) + pattern_re = re.sub(r'((?