From 4574f23115e2c0b35a2e1a4cac0aa7c855144639 Mon Sep 17 00:00:00 2001 From: Fred Drake Date: Wed, 4 Aug 1999 13:08:19 +0000 Subject: PyBuffer_New(): Raise ValueError if size is negative (the other constructors didn't miss this). Raise MemoryError if malloc() fails, instead of just returning NULL. --- Objects/bufferobject.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'Objects/bufferobject.c') diff --git a/Objects/bufferobject.c b/Objects/bufferobject.c index 017ae64416..05b1f11406 100644 --- a/Objects/bufferobject.c +++ b/Objects/bufferobject.c @@ -183,9 +183,14 @@ PyBuffer_New(size) { PyBufferObject * b; + if (size < 0) { + PyErr_SetString(PyExc_ValueError, + "size must be zero or positive"); + return NULL; + } b = (PyBufferObject *)malloc(sizeof(*b) + size); if ( b == NULL ) - return NULL; + return PyErr_NoMemory(); b->ob_type = &PyBuffer_Type; _Py_NewReference((PyObject *)b); -- cgit v1.2.1