cleanup
authorStefan Behnel <scoder@users.berlios.de>
Thu, 15 Oct 2009 14:58:31 +0000 (16:58 +0200)
committerStefan Behnel <scoder@users.berlios.de>
Thu, 15 Oct 2009 14:58:31 +0000 (16:58 +0200)
Cython/Includes/numpy.pxd

index 35fba02bb355ced69e8f480368d970bdf5503612..3f6c602fa45fd860f1300d048964df4f06014cb7 100644 (file)
@@ -17,7 +17,7 @@
 DEF _buffer_format_string_len = 255
 
 cimport python_buffer as pybuf
-from python_ref cimport PyObject, Py_XINCREF, Py_XDECREF
+from python_ref cimport PyObject, Py_INCREF, Py_XDECREF
 cimport stdlib
 cimport stdio
 
@@ -903,23 +903,21 @@ cdef extern from "numpy/ufuncobject.h":
              (PyUFuncGenericFunction *, void **, char *, int, int, int,
               int, char *, char *, int, char *)
 
-
     void import_ufunc()
 
+
 cdef inline void set_array_base(ndarray arr, object base):
      cdef PyObject* baseptr
-     cdef ndarray raw = arr
      if base is None:
          baseptr = NULL
      else:
+         Py_INCREF(base) # important to do this before decref below!
          baseptr = <PyObject*>base
-         Py_XINCREF(baseptr) # important to do this before decref below!
-     Py_XDECREF(raw.base)
-     raw.base = baseptr
+     Py_XDECREF(arr.base)
+     arr.base = baseptr
 
 cdef inline object get_array_base(ndarray arr):
-    cdef ndarray raw = arr
-    if raw.base == NULL:
+    if arr.base is NULL:
         return None
     else:
-        return <object>raw.base
+        return <object>arr.base