diff Objects/memoryobject.c @ 64362:4547b1491169 3.1

Merged revisions 84408-84409 via svnmerge from svn+ssh://pythondev@svn.python.org/python/branches/py3k ........ r84408 | antoine.pitrou | 2010-09-01 23:14:16 +0200 (mer., 01 sept. 2010) | 4 lines Issue #9737: Fix a crash when trying to delete a slice or an item from a memoryview object. ........ r84409 | antoine.pitrou | 2010-09-01 23:14:46 +0200 (mer., 01 sept. 2010) | 3 lines Fix a compilation warning ........
author Antoine Pitrou <solipsis@pitrou.net>
date Wed, 01 Sep 2010 21:16:10 +0000
parents b3b8d08f9d06
children 2fde5abfb5f1
line wrap: on
line diff
--- a/Objects/memoryobject.c	Wed Sep 01 20:30:18 2010 +0000
+++ b/Objects/memoryobject.c	Wed Sep 01 21:16:10 2010 +0000
@@ -179,7 +179,7 @@
     int k;
     Py_ssize_t elements;
     char *ptr;
-    void (*func)(int, Py_ssize_t *, Py_ssize_t *);
+    void (*func)(int, Py_ssize_t *, const Py_ssize_t *);
 
     if (view->ndim > PY_SSIZE_T_MAX / sizeof(Py_ssize_t)) {
         PyErr_NoMemory();
@@ -631,6 +631,11 @@
             "cannot modify read-only memory");
         return -1;
     }
+    if (value == NULL) {
+        PyErr_SetString(PyExc_TypeError,
+                        "cannot delete memory");
+        return -1;
+    }
     if (view->ndim != 1) {
         PyErr_SetNone(PyExc_NotImplementedError);
         return -1;