diff options
Diffstat (limited to 'lang/python27/files/patch-objects_tupleobject.c')
| -rw-r--r-- | lang/python27/files/patch-objects_tupleobject.c | 17 | 
1 files changed, 17 insertions, 0 deletions
| diff --git a/lang/python27/files/patch-objects_tupleobject.c b/lang/python27/files/patch-objects_tupleobject.c new file mode 100644 index 000000000000..eb133b6e002c --- /dev/null +++ b/lang/python27/files/patch-objects_tupleobject.c @@ -0,0 +1,17 @@ +--- Objects/tupleobject.c.orig	2006-08-12 18:03:09.000000000 +0100 ++++ Objects/tupleobject.c	2008-08-30 10:16:13.000000000 +0100 +@@ -60,11 +60,12 @@ + 		Py_ssize_t nbytes = size * sizeof(PyObject *); + 		/* Check for overflow */ + 		if (nbytes / sizeof(PyObject *) != (size_t)size || +-		    (nbytes += sizeof(PyTupleObject) - sizeof(PyObject *)) +-		    <= 0) ++		    (nbytes > PY_SSIZE_T_MAX - sizeof(PyTupleObject) - sizeof(PyObject *))) + 		{ + 			return PyErr_NoMemory(); + 		} ++		nbytes += sizeof(PyTupleObject) - sizeof(PyObject *); ++ + 		op = PyObject_GC_NewVar(PyTupleObject, &PyTuple_Type, size); + 		if (op == NULL) + 			return NULL; | 
