]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
#5932: fix error return in _convertPyInt_AsSsize_t() conversion function.
authorGeorg Brandl <georg@python.org>
Tue, 5 May 2009 07:48:12 +0000 (07:48 +0000)
committerGeorg Brandl <georg@python.org>
Tue, 5 May 2009 07:48:12 +0000 (07:48 +0000)
Lib/json/tests/test_scanstring.py
Modules/_json.c

index 6b600dbe16b55b45886636eedcdb1e0eae07992d..53d0b6696e339e84a3308e06c5d863a1e922d208 100644 (file)
@@ -107,3 +107,6 @@ class TestScanString(TestCase):
                           "xxx")
         self.assertRaises(UnicodeDecodeError,
                           json.encoder.encode_basestring_ascii, b"xx\xff")
+
+    def test_overflow(self):
+        self.assertRaises(OverflowError, json.decoder.scanstring, b"xxx", sys.maxsize+1)
index 0e3046948e212de982b9dff66d3b918b38faf23d..cfe87087d7f3c6bd78b98213516fb4430ae9556c 100644 (file)
@@ -143,9 +143,9 @@ _convertPyInt_AsSsize_t(PyObject *o, Py_ssize_t *size_ptr)
 {
     /* PyObject to Py_ssize_t converter */
     *size_ptr = PyInt_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 *