summaryrefslogtreecommitdiffstats
path: root/Misc
diff options
context:
space:
mode:
authorGustavo Niemeyer <gustavo@niemeyer.net>2002-11-06 14:06:53 (GMT)
committerGustavo Niemeyer <gustavo@niemeyer.net>2002-11-06 14:06:53 (GMT)
commit4e7be06a652680611a81d6bb1fb03ce4227ac02e (patch)
tree0abf84675d23c70b00736be2692b59a6fd5c0222 /Misc
parent3c2c43341792b886740adec80ff875b1461a0ef2 (diff)
downloadcpython-4e7be06a652680611a81d6bb1fb03ce4227ac02e.zip
cpython-4e7be06a652680611a81d6bb1fb03ce4227ac02e.tar.gz
cpython-4e7be06a652680611a81d6bb1fb03ce4227ac02e.tar.bz2
Fixed bug #470582, using a modified version of patch #527371,
from Greg Chapman. * Modules/_sre.c (lastmark_restore): New function, implementing algorithm to restore a state to a given lastmark. In addition to the similar algorithm used in a few places of SRE_MATCH, restore lastindex when restoring lastmark. (SRE_MATCH): Replace lastmark inline restoring by lastmark_restore(), function. Also include it where missing. In SRE_OP_MARK, set lastindex only if i > lastmark. * Lib/test/re_tests.py * Lib/test/test_sre.py Included regression tests for the fixed bugs. * Misc/NEWS Mention fixes.
Diffstat (limited to 'Misc')
-rw-r--r--Misc/NEWS7
1 files changed, 7 insertions, 0 deletions
diff --git a/Misc/NEWS b/Misc/NEWS
index c57ca1d..cccaff5 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -352,6 +352,13 @@ Extension modules
to the value of the PYTHON_API_VERSION macro with which the
interpreter was compiled.
+- Fixed bug #470582: sre module would return a tuple (None, 'a', 'ab')
+ when applying the regular expression '^((a)c)?(ab)$' on 'ab'. It now
+ returns (None, None, 'ab'), as expected. Also fixed handling of
+ lastindex/lastgroup match attributes in a similar cases. For example,
+ when running the expression r'(a)(b)?b' over 'ab', lastindex must be
+ 1, not 2.
+
Library
-------