summaryrefslogtreecommitdiffstats
path: root/Lib/test/test_complex.py
diff options
context:
space:
mode:
authorINADA Naoki <methane@users.noreply.github.com>2018-07-14 03:06:43 (GMT)
committerGitHub <noreply@github.com>2018-07-14 03:06:43 (GMT)
commit16dfca4d829e45f36e71bf43f83226659ce49315 (patch)
treef06c2f627ae2b4984d1c56ae97248b6eb5c51c38 /Lib/test/test_complex.py
parentcafaf0447b950fd4f59edd8cbde040c61ae528f8 (diff)
downloadcpython-16dfca4d829e45f36e71bf43f83226659ce49315.zip
cpython-16dfca4d829e45f36e71bf43f83226659ce49315.tar.gz
cpython-16dfca4d829e45f36e71bf43f83226659ce49315.tar.bz2
bpo-34087: Fix buffer overflow in int(s) and similar functions (GH-8274)
`_PyUnicode_TransformDecimalAndSpaceToASCII()` missed trailing NUL char. It caused buffer overflow in `_Py_string_to_number_with_underscores()`. This bug is introduced in 9b6c60cb.
Diffstat (limited to 'Lib/test/test_complex.py')
-rw-r--r--Lib/test/test_complex.py3
1 files changed, 3 insertions, 0 deletions
diff --git a/Lib/test/test_complex.py b/Lib/test/test_complex.py
index 2d883c5..21c6eae 100644
--- a/Lib/test/test_complex.py
+++ b/Lib/test/test_complex.py
@@ -345,6 +345,9 @@ class ComplexTest(unittest.TestCase):
self.assertEqual(type(complex("1"*500)), complex)
# check whitespace processing
self.assertEqual(complex('\N{EM SPACE}(\N{EN SPACE}1+1j ) '), 1+1j)
+ # Invalid unicode string
+ # See bpo-34087
+ self.assertRaises(ValueError, complex, '\u3053\u3093\u306b\u3061\u306f')
class EvilExc(Exception):
pass