From 7e10dbbd45503268f7bb3b241e30745df6c91b99 Mon Sep 17 00:00:00 2001 From: Serhiy Storchaka Date: Sat, 4 Feb 2017 22:53:57 +0200 Subject: Issue #29444: Fixed out-of-bounds buffer access in the group() method of the match object. Based on patch by WGH. --- Lib/test/test_re.py | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'Lib/test/test_re.py') diff --git a/Lib/test/test_re.py b/Lib/test/test_re.py index 0834fe0f40..9acd5abbfd 100644 --- a/Lib/test/test_re.py +++ b/Lib/test/test_re.py @@ -1679,6 +1679,16 @@ SUBPATTERN None self.checkPatternError(r'(?<>)', 'unknown extension ?<>', 1) self.checkPatternError(r'(?', 'unexpected end of pattern', 2) + def test_bug_29444(self): + s = bytearray(b'abcdefgh') + m = re.search(b'[a-h]+', s) + m2 = re.search(b'[e-h]+', s) + self.assertEqual(m.group(), b'abcdefgh') + self.assertEqual(m2.group(), b'efgh') + s[:] = b'xyz' + self.assertEqual(m.group(), b'xyz') + self.assertEqual(m2.group(), b'') + class PatternReprTests(unittest.TestCase): def check(self, pattern, expected): -- cgit v1.2.1