Commit ff593e47 authored by Gregory P. Smith's avatar Gregory P. Smith

Merged revisions 74476 via svnmerge from

svn+ssh://pythondev@svn.python.org/python/branches/py3k

................
  r74476 | gregory.p.smith | 2009-08-16 11:58:46 -0700 (Sun, 16 Aug 2009) | 9 lines

  Merged revisions 74475 via svnmerge from
  svn+ssh://pythondev@svn.python.org/python/trunk

  ........
    r74475 | gregory.p.smith | 2009-08-16 11:52:58 -0700 (Sun, 16 Aug 2009) | 2 lines

    Issue 6665: Fix fnmatch to properly match filenames with newlines in them.
  ........
................
parent 6934d94d
......@@ -113,4 +113,4 @@ def translate(pat):
res = '%s[%s]' % (res, stuff)
else:
res = res + re.escape(c)
return res + "$"
return res + '\Z(?ms)'
......@@ -32,11 +32,18 @@ class FnmatchTestCase(unittest.TestCase):
check('a', 'b', 0)
# these test that '\' is handled correctly in character sets;
# see SF bug #???
# see SF bug #409651
check('\\', r'[\]')
check('a', r'[!\]')
check('\\', r'[!\]', 0)
# test that filenames with newlines in them are handled correctly.
# http://bugs.python.org/issue6665
check('foo\nbar', 'foo*')
check('foo\nbar\n', 'foo*')
check('\nfoo', 'foo*', False)
check('\n', '*')
def test_mix_bytes_str(self):
self.assertRaises(TypeError, fnmatch, 'test', b'*')
self.assertRaises(TypeError, fnmatch, b'test', '*')
......@@ -46,6 +53,8 @@ class FnmatchTestCase(unittest.TestCase):
def test_bytes(self):
self.check_match(b'test', b'te*')
self.check_match(b'test\xff', b'te*\xff')
self.check_match(b'foo\nbar', b'foo*')
def test_main():
support.run_unittest(FnmatchTestCase)
......
......@@ -37,6 +37,8 @@ Core and Builtins
Library
-------
- Issue #6665: Fix fnmatch to properly match filenames with newlines in them.
- Issue #7246 & Issue #7208: getpass now properly flushes input before
reading from stdin so that existing input does not confuse it and
lead to incorrect entry or an IOError. It also properly flushes it
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment