diff Objects/bufferobject.c @ 11175:fab81df566d0 legacy-trunk

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.
author Fred Drake <fdrake@acm.org>
date Wed, 04 Aug 1999 13:08:19 +0000
parents 62781914fadb
children 1c7c2dd1beb1
line wrap: on
line diff
--- a/Objects/bufferobject.c	Wed Aug 04 12:07:09 1999 +0000
+++ b/Objects/bufferobject.c	Wed Aug 04 13:08:19 1999 +0000
@@ -183,9 +183,14 @@
 {
 	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);