Merged revisions 72314 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r72314 | georg.brandl | 2009-05-05 09:48:12 +0200 (Di, 05 Mai 2009) | 1 line
#5932: fix error return in _convertPyInt_AsSsize_t() conversion function.
........
diff --git a/Lib/json/tests/test_scanstring.py b/Lib/json/tests/test_scanstring.py
index 2d55672..2e9136b 100644
--- a/Lib/json/tests/test_scanstring.py
+++ b/Lib/json/tests/test_scanstring.py
@@ -102,3 +102,6 @@
self.assertEquals(
scanstring('["Bad value", truth]', 2, True),
('Bad value', 12))
+
+ def test_overflow(self):
+ self.assertRaises(OverflowError, json.decoder.scanstring, b"xxx", sys.maxsize+1)
diff --git a/Modules/_json.c b/Modules/_json.c
index 45f4b58..c44dbac 100644
--- a/Modules/_json.c
+++ b/Modules/_json.c
@@ -133,9 +133,9 @@
{
/* PyObject to Py_ssize_t converter */
*size_ptr = PyLong_AsSsize_t(o);
- if (*size_ptr == -1 && PyErr_Occurred());
- return 1;
- return 0;
+ if (*size_ptr == -1 && PyErr_Occurred())
+ return 0;
+ return 1;
}
static PyObject *