Revision: 4265
          http://matplotlib.svn.sourceforge.net/matplotlib/?rev=4265&view=rev
Author:   jswhit
Date:     2007-11-14 05:05:06 -0800 (Wed, 14 Nov 2007)

Log Message:
-----------
fix one last memory leak

Modified Paths:
--------------
    trunk/toolkits/basemap-testing/src/_geos.c
    trunk/toolkits/basemap-testing/src/_geos.pyx

Modified: trunk/toolkits/basemap-testing/src/_geos.c
===================================================================
--- trunk/toolkits/basemap-testing/src/_geos.c  2007-11-14 07:45:12 UTC (rev 
4264)
+++ trunk/toolkits/basemap-testing/src/_geos.c  2007-11-14 13:05:06 UTC (rev 
4265)
@@ -1,4 +1,4 @@
-/* Generated by Cython 0.9.6.7 on Tue Nov 13 21:03:25 2007 */
+/* Generated by Cython 0.9.6.7 on Wed Nov 14 06:04:45 2007 */
 
 #define PY_SSIZE_T_CLEAN
 #include "Python.h"
@@ -1010,7 +1010,7 @@
  *         else:
  *             type = PyString_FromString(GEOSGeomType(g3))             # 
<<<<<<<<<<<<<< 
  *             raise NotImplementedError("intersections of type '%s' not yet 
implemented" % (type))
- *         return pout
+ *         GEOSGeom_destroy(g3)
  */
     __pyx_2 = PyString_FromString(GEOSGeomType(__pyx_v_g3)); if 
(unlikely(!__pyx_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 191; goto 
__pyx_L1;}
     Py_DECREF(__pyx_v_type);
@@ -1021,8 +1021,8 @@
  *         else:
  *             type = PyString_FromString(GEOSGeomType(g3))
  *             raise NotImplementedError("intersections of type '%s' not yet 
implemented" % (type))             # <<<<<<<<<<<<<< 
+ *         GEOSGeom_destroy(g3)
  *         return pout
- * 
  */
     __pyx_4 = PyNumber_Remainder(__pyx_k6p, __pyx_v_type); if 
(unlikely(!__pyx_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 192; goto 
__pyx_L1;}
     __pyx_3 = PyTuple_New(1); if (unlikely(!__pyx_3)) {__pyx_filename = 
__pyx_f[0]; __pyx_lineno = 192; goto __pyx_L1;}
@@ -1039,6 +1039,15 @@
   /* "/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":193
  *             type = PyString_FromString(GEOSGeomType(g3))
  *             raise NotImplementedError("intersections of type '%s' not yet 
implemented" % (type))
+ *         GEOSGeom_destroy(g3)             # <<<<<<<<<<<<<< 
+ *         return pout
+ * 
+ */
+  GEOSGeom_destroy(__pyx_v_g3);
+
+  /* "/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":194
+ *             raise NotImplementedError("intersections of type '%s' not yet 
implemented" % (type))
+ *         GEOSGeom_destroy(g3)
  *         return pout             # <<<<<<<<<<<<<< 
  * 
  *     def get_coords(self):
@@ -1071,14 +1080,14 @@
   PyObject *__pyx_1 = 0;
   Py_INCREF(__pyx_v_self);
 
-  /* "/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":196
+  /* "/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":197
  * 
  *     def get_coords(self):
  *         return _get_coords(self._geom)             # <<<<<<<<<<<<<< 
  * 
  *     def __dealloc__(self):
  */
-  __pyx_1 = __pyx_f_5_geos__get_coords(((struct __pyx_obj_5_geos_BaseGeometry 
*)__pyx_v_self)->_geom); if (unlikely(!__pyx_1)) {__pyx_filename = __pyx_f[0]; 
__pyx_lineno = 196; goto __pyx_L1;}
+  __pyx_1 = __pyx_f_5_geos__get_coords(((struct __pyx_obj_5_geos_BaseGeometry 
*)__pyx_v_self)->_geom); if (unlikely(!__pyx_1)) {__pyx_filename = __pyx_f[0]; 
__pyx_lineno = 197; goto __pyx_L1;}
   __pyx_r = __pyx_1;
   __pyx_1 = 0;
   goto __pyx_L0;
@@ -1099,7 +1108,7 @@
 static void __pyx_f_py_5_geos_12BaseGeometry___dealloc__(PyObject 
*__pyx_v_self) {
   Py_INCREF(__pyx_v_self);
 
-  /* "/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":200
+  /* "/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":201
  *     def __dealloc__(self):
  *         """destroy GEOS geometry"""
  *         GEOSGeom_destroy(self._geom)             # <<<<<<<<<<<<<< 
@@ -1122,18 +1131,18 @@
   PyObject *__pyx_3 = 0;
   Py_INCREF(__pyx_v_self);
 
-  /* "/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":204
+  /* "/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":205
  *     def __reduce__(self):
  *         """special method that allows geos instance to be pickled"""
  *         return (self.__class__,(self.boundary,))             # 
<<<<<<<<<<<<<< 
  *     
  * cdef class Polygon(BaseGeometry):
  */
-  __pyx_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n___class__); if 
(unlikely(!__pyx_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 204; goto 
__pyx_L1;}
-  __pyx_2 = PyTuple_New(1); if (unlikely(!__pyx_2)) {__pyx_filename = 
__pyx_f[0]; __pyx_lineno = 204; goto __pyx_L1;}
+  __pyx_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n___class__); if 
(unlikely(!__pyx_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 205; goto 
__pyx_L1;}
+  __pyx_2 = PyTuple_New(1); if (unlikely(!__pyx_2)) {__pyx_filename = 
__pyx_f[0]; __pyx_lineno = 205; goto __pyx_L1;}
   Py_INCREF(((struct __pyx_obj_5_geos_BaseGeometry *)__pyx_v_self)->boundary);
   PyTuple_SET_ITEM(__pyx_2, 0, ((struct __pyx_obj_5_geos_BaseGeometry 
*)__pyx_v_self)->boundary);
-  __pyx_3 = PyTuple_New(2); if (unlikely(!__pyx_3)) {__pyx_filename = 
__pyx_f[0]; __pyx_lineno = 204; goto __pyx_L1;}
+  __pyx_3 = PyTuple_New(2); if (unlikely(!__pyx_3)) {__pyx_filename = 
__pyx_f[0]; __pyx_lineno = 205; goto __pyx_L1;}
   PyTuple_SET_ITEM(__pyx_3, 0, __pyx_1);
   PyTuple_SET_ITEM(__pyx_3, 1, __pyx_2);
   __pyx_1 = 0;
@@ -1184,9 +1193,9 @@
   if (unlikely(!PyArg_ParseTupleAndKeywords(__pyx_args, __pyx_kwds, "O", 
__pyx_argnames, &__pyx_v_b))) return -1;
   Py_INCREF((PyObject *)__pyx_v_self);
   Py_INCREF(__pyx_v_b);
-  if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_b), 
__pyx_ptype_5_geos_ndarray, 1, "b"))) {__pyx_filename = __pyx_f[0]; 
__pyx_lineno = 208; goto __pyx_L1;}
+  if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_b), 
__pyx_ptype_5_geos_ndarray, 1, "b"))) {__pyx_filename = __pyx_f[0]; 
__pyx_lineno = 209; goto __pyx_L1;}
 
-  /* "/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":217
+  /* "/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":218
  *         # make sure data is contiguous.
  *         # if not, make a local copy.
  *         if not PyArray_ISCONTIGUOUS(b):             # <<<<<<<<<<<<<< 
@@ -1196,17 +1205,17 @@
   __pyx_1 = (!PyArray_ISCONTIGUOUS(__pyx_v_b));
   if (__pyx_1) {
 
-    /* 
"/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":218
+    /* 
"/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":219
  *         # if not, make a local copy.
  *         if not PyArray_ISCONTIGUOUS(b):
  *             b = b.copy()             # <<<<<<<<<<<<<< 
  * 
  *         m = b.shape[0]
  */
-    __pyx_2 = PyObject_GetAttr(((PyObject *)__pyx_v_b), __pyx_n_copy); if 
(unlikely(!__pyx_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 218; goto 
__pyx_L1;}
-    __pyx_3 = PyObject_CallObject(__pyx_2, 0); if (unlikely(!__pyx_3)) 
{__pyx_filename = __pyx_f[0]; __pyx_lineno = 218; goto __pyx_L1;}
+    __pyx_2 = PyObject_GetAttr(((PyObject *)__pyx_v_b), __pyx_n_copy); if 
(unlikely(!__pyx_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 219; goto 
__pyx_L1;}
+    __pyx_3 = PyObject_CallObject(__pyx_2, 0); if (unlikely(!__pyx_3)) 
{__pyx_filename = __pyx_f[0]; __pyx_lineno = 219; goto __pyx_L1;}
     Py_DECREF(__pyx_2); __pyx_2 = 0;
-    if (!__Pyx_TypeTest(__pyx_3, __pyx_ptype_5_geos_ndarray)) {__pyx_filename 
= __pyx_f[0]; __pyx_lineno = 218; goto __pyx_L1;}
+    if (!__Pyx_TypeTest(__pyx_3, __pyx_ptype_5_geos_ndarray)) {__pyx_filename 
= __pyx_f[0]; __pyx_lineno = 219; goto __pyx_L1;}
     Py_DECREF(((PyObject *)__pyx_v_b));
     __pyx_v_b = ((PyArrayObject *)__pyx_3);
     __pyx_3 = 0;
@@ -1214,78 +1223,78 @@
   }
   __pyx_L2:;
 
-  /* "/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":220
+  /* "/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":221
  *             b = b.copy()
  * 
  *         m = b.shape[0]             # <<<<<<<<<<<<<< 
  * 
  *         # Add closing coordinates to sequence?
  */
-  __pyx_2 = PyObject_GetAttr(((PyObject *)__pyx_v_b), __pyx_n_shape); if 
(unlikely(!__pyx_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 220; goto 
__pyx_L1;}
+  __pyx_2 = PyObject_GetAttr(((PyObject *)__pyx_v_b), __pyx_n_shape); if 
(unlikely(!__pyx_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 221; goto 
__pyx_L1;}
   if (PyList_CheckExact(__pyx_2) && 0 <= 0 && 0 < PyList_GET_SIZE(__pyx_2)) {
     __pyx_4 = PyList_GET_ITEM(__pyx_2, 0); Py_INCREF(__pyx_4);
     } else if (PyTuple_CheckExact(__pyx_2) && 0 <= 0 && 0 < 
PyTuple_GET_SIZE(__pyx_2)) {
     __pyx_4 = PyTuple_GET_ITEM(__pyx_2, 0); Py_INCREF(__pyx_4);
     } else {
-    __pyx_3 = PyInt_FromLong(0); if (unlikely(!__pyx_3)) {__pyx_filename = 
__pyx_f[0]; __pyx_lineno = 220; goto __pyx_L1;}
-    __pyx_4 = PyObject_GetItem(__pyx_2, __pyx_3); if (unlikely(!__pyx_4)) 
{__pyx_filename = __pyx_f[0]; __pyx_lineno = 220; goto __pyx_L1;}
+    __pyx_3 = PyInt_FromLong(0); if (unlikely(!__pyx_3)) {__pyx_filename = 
__pyx_f[0]; __pyx_lineno = 221; goto __pyx_L1;}
+    __pyx_4 = PyObject_GetItem(__pyx_2, __pyx_3); if (unlikely(!__pyx_4)) 
{__pyx_filename = __pyx_f[0]; __pyx_lineno = 221; goto __pyx_L1;}
     Py_DECREF(__pyx_3); __pyx_3 = 0;
   }
   Py_DECREF(__pyx_2); __pyx_2 = 0;
-  __pyx_5 = PyInt_AsUnsignedLongMask(__pyx_4); if (unlikely(PyErr_Occurred())) 
{__pyx_filename = __pyx_f[0]; __pyx_lineno = 220; goto __pyx_L1;}
+  __pyx_5 = PyInt_AsUnsignedLongMask(__pyx_4); if (unlikely(PyErr_Occurred())) 
{__pyx_filename = __pyx_f[0]; __pyx_lineno = 221; goto __pyx_L1;}
   Py_DECREF(__pyx_4); __pyx_4 = 0;
   __pyx_v_m = __pyx_5;
 
-  /* "/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":223
+  /* "/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":224
  * 
  *         # Add closing coordinates to sequence?
  *         if b[-1,0] != b[0,0] or b[-1,1] != b[0,1]:             # 
<<<<<<<<<<<<<< 
  *             M = m + 1
  *         else:
  */
-  __pyx_3 = PyTuple_New(2); if (unlikely(!__pyx_3)) {__pyx_filename = 
__pyx_f[0]; __pyx_lineno = 223; goto __pyx_L1;}
+  __pyx_3 = PyTuple_New(2); if (unlikely(!__pyx_3)) {__pyx_filename = 
__pyx_f[0]; __pyx_lineno = 224; goto __pyx_L1;}
   Py_INCREF(__pyx_num_neg_1);
   PyTuple_SET_ITEM(__pyx_3, 0, __pyx_num_neg_1);
   Py_INCREF(__pyx_num_0);
   PyTuple_SET_ITEM(__pyx_3, 1, __pyx_num_0);
-  __pyx_4 = PyObject_GetItem(((PyObject *)__pyx_v_b), __pyx_3); if 
(unlikely(!__pyx_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 223; goto 
__pyx_L1;}
+  __pyx_4 = PyObject_GetItem(((PyObject *)__pyx_v_b), __pyx_3); if 
(unlikely(!__pyx_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 224; goto 
__pyx_L1;}
   Py_DECREF(__pyx_3); __pyx_3 = 0;
-  __pyx_3 = PyTuple_New(2); if (unlikely(!__pyx_3)) {__pyx_filename = 
__pyx_f[0]; __pyx_lineno = 223; goto __pyx_L1;}
+  __pyx_3 = PyTuple_New(2); if (unlikely(!__pyx_3)) {__pyx_filename = 
__pyx_f[0]; __pyx_lineno = 224; goto __pyx_L1;}
   Py_INCREF(__pyx_num_0);
   PyTuple_SET_ITEM(__pyx_3, 0, __pyx_num_0);
   Py_INCREF(__pyx_num_0);
   PyTuple_SET_ITEM(__pyx_3, 1, __pyx_num_0);
-  __pyx_6 = PyObject_GetItem(((PyObject *)__pyx_v_b), __pyx_3); if 
(unlikely(!__pyx_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 223; goto 
__pyx_L1;}
+  __pyx_6 = PyObject_GetItem(((PyObject *)__pyx_v_b), __pyx_3); if 
(unlikely(!__pyx_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 224; goto 
__pyx_L1;}
   Py_DECREF(__pyx_3); __pyx_3 = 0;
-  __pyx_2 = PyObject_RichCompare(__pyx_4, __pyx_6, Py_NE); if 
(unlikely(!__pyx_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 223; goto 
__pyx_L1;}
+  __pyx_2 = PyObject_RichCompare(__pyx_4, __pyx_6, Py_NE); if 
(unlikely(!__pyx_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 224; goto 
__pyx_L1;}
   Py_DECREF(__pyx_4); __pyx_4 = 0;
   Py_DECREF(__pyx_6); __pyx_6 = 0;
-  __pyx_1 = __Pyx_PyObject_IsTrue(__pyx_2); if (unlikely(__pyx_1 < 0)) 
{__pyx_filename = __pyx_f[0]; __pyx_lineno = 223; goto __pyx_L1;}
+  __pyx_1 = __Pyx_PyObject_IsTrue(__pyx_2); if (unlikely(__pyx_1 < 0)) 
{__pyx_filename = __pyx_f[0]; __pyx_lineno = 224; goto __pyx_L1;}
   if (!__pyx_1) {
     Py_DECREF(__pyx_2); __pyx_2 = 0;
-    __pyx_3 = PyTuple_New(2); if (unlikely(!__pyx_3)) {__pyx_filename = 
__pyx_f[0]; __pyx_lineno = 223; goto __pyx_L1;}
+    __pyx_3 = PyTuple_New(2); if (unlikely(!__pyx_3)) {__pyx_filename = 
__pyx_f[0]; __pyx_lineno = 224; goto __pyx_L1;}
     Py_INCREF(__pyx_num_neg_1);
     PyTuple_SET_ITEM(__pyx_3, 0, __pyx_num_neg_1);
     Py_INCREF(__pyx_num_1);
     PyTuple_SET_ITEM(__pyx_3, 1, __pyx_num_1);
-    __pyx_4 = PyObject_GetItem(((PyObject *)__pyx_v_b), __pyx_3); if 
(unlikely(!__pyx_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 223; goto 
__pyx_L1;}
+    __pyx_4 = PyObject_GetItem(((PyObject *)__pyx_v_b), __pyx_3); if 
(unlikely(!__pyx_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 224; goto 
__pyx_L1;}
     Py_DECREF(__pyx_3); __pyx_3 = 0;
-    __pyx_6 = PyTuple_New(2); if (unlikely(!__pyx_6)) {__pyx_filename = 
__pyx_f[0]; __pyx_lineno = 223; goto __pyx_L1;}
+    __pyx_6 = PyTuple_New(2); if (unlikely(!__pyx_6)) {__pyx_filename = 
__pyx_f[0]; __pyx_lineno = 224; goto __pyx_L1;}
     Py_INCREF(__pyx_num_0);
     PyTuple_SET_ITEM(__pyx_6, 0, __pyx_num_0);
     Py_INCREF(__pyx_num_1);
     PyTuple_SET_ITEM(__pyx_6, 1, __pyx_num_1);
-    __pyx_3 = PyObject_GetItem(((PyObject *)__pyx_v_b), __pyx_6); if 
(unlikely(!__pyx_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 223; goto 
__pyx_L1;}
+    __pyx_3 = PyObject_GetItem(((PyObject *)__pyx_v_b), __pyx_6); if 
(unlikely(!__pyx_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 224; goto 
__pyx_L1;}
     Py_DECREF(__pyx_6); __pyx_6 = 0;
-    __pyx_2 = PyObject_RichCompare(__pyx_4, __pyx_3, Py_NE); if 
(unlikely(!__pyx_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 223; goto 
__pyx_L1;}
+    __pyx_2 = PyObject_RichCompare(__pyx_4, __pyx_3, Py_NE); if 
(unlikely(!__pyx_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 224; goto 
__pyx_L1;}
     Py_DECREF(__pyx_4); __pyx_4 = 0;
     Py_DECREF(__pyx_3); __pyx_3 = 0;
   }
-  __pyx_1 = __Pyx_PyObject_IsTrue(__pyx_2); if (unlikely(__pyx_1 < 0)) 
{__pyx_filename = __pyx_f[0]; __pyx_lineno = 223; goto __pyx_L1;}
+  __pyx_1 = __Pyx_PyObject_IsTrue(__pyx_2); if (unlikely(__pyx_1 < 0)) 
{__pyx_filename = __pyx_f[0]; __pyx_lineno = 224; goto __pyx_L1;}
   Py_DECREF(__pyx_2); __pyx_2 = 0;
   if (__pyx_1) {
 
-    /* 
"/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":224
+    /* 
"/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":225
  *         # Add closing coordinates to sequence?
  *         if b[-1,0] != b[0,0] or b[-1,1] != b[0,1]:
  *             M = m + 1             # <<<<<<<<<<<<<< 
@@ -1297,7 +1306,7 @@
   }
   /*else*/ {
 
-    /* 
"/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":226
+    /* 
"/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":227
  *             M = m + 1
  *         else:
  *             M = m             # <<<<<<<<<<<<<< 
@@ -1308,7 +1317,7 @@
   }
   __pyx_L3:;
 
-  /* "/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":227
+  /* "/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":228
  *         else:
  *             M = m
  *         self._npts = M             # <<<<<<<<<<<<<< 
@@ -1317,7 +1326,7 @@
  */
   ((struct __pyx_obj_5_geos_Polygon *)__pyx_v_self)->__pyx_base._npts = 
__pyx_v_M;
 
-  /* "/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":230
+  /* "/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":231
  * 
  *         # Create a coordinate sequence
  *         cs = GEOSCoordSeq_create(M, 2)             # <<<<<<<<<<<<<< 
@@ -1326,7 +1335,7 @@
  */
   __pyx_v_cs = GEOSCoordSeq_create(__pyx_v_M,2);
 
-  /* "/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":233
+  /* "/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":234
  * 
  *         # add to coordinate sequence
  *         bbuffer = <double *>b.data             # <<<<<<<<<<<<<< 
@@ -1335,7 +1344,7 @@
  */
   __pyx_v_bbuffer = ((double (*))__pyx_v_b->data);
 
-  /* "/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":234
+  /* "/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":235
  *         # add to coordinate sequence
  *         bbuffer = <double *>b.data
  *         for i from 0 <= i < m:             # <<<<<<<<<<<<<< 
@@ -1344,7 +1353,7 @@
  */
   for (__pyx_v_i = 0; __pyx_v_i < __pyx_v_m; __pyx_v_i++) {
 
-    /* 
"/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":235
+    /* 
"/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":236
  *         bbuffer = <double *>b.data
  *         for i from 0 <= i < m:
  *             dx = bbuffer[2*i]             # <<<<<<<<<<<<<< 
@@ -1353,7 +1362,7 @@
  */
     __pyx_v_dx = (__pyx_v_bbuffer[(2 * __pyx_v_i)]);
 
-    /* 
"/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":236
+    /* 
"/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":237
  *         for i from 0 <= i < m:
  *             dx = bbuffer[2*i]
  *             dy = bbuffer[2*i+1]             # <<<<<<<<<<<<<< 
@@ -1362,7 +1371,7 @@
  */
     __pyx_v_dy = (__pyx_v_bbuffer[((2 * __pyx_v_i) + 1)]);
 
-    /* 
"/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":239
+    /* 
"/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":240
  *             # Because of a bug in the GEOS C API, 
  *             # always set X before Y
  *             GEOSCoordSeq_setX(cs, i, dx)             # <<<<<<<<<<<<<< 
@@ -1371,7 +1380,7 @@
  */
     GEOSCoordSeq_setX(__pyx_v_cs,__pyx_v_i,__pyx_v_dx);
 
-    /* 
"/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":240
+    /* 
"/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":241
  *             # always set X before Y
  *             GEOSCoordSeq_setX(cs, i, dx)
  *             GEOSCoordSeq_setY(cs, i, dy)             # <<<<<<<<<<<<<< 
@@ -1381,7 +1390,7 @@
     GEOSCoordSeq_setY(__pyx_v_cs,__pyx_v_i,__pyx_v_dy);
   }
 
-  /* "/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":243
+  /* "/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":244
  * 
  *         # Add closing coordinates to sequence?
  *         if M > m:             # <<<<<<<<<<<<<< 
@@ -1391,7 +1400,7 @@
   __pyx_1 = (__pyx_v_M > __pyx_v_m);
   if (__pyx_1) {
 
-    /* 
"/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":244
+    /* 
"/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":245
  *         # Add closing coordinates to sequence?
  *         if M > m:
  *             dx = bbuffer[0]             # <<<<<<<<<<<<<< 
@@ -1400,7 +1409,7 @@
  */
     __pyx_v_dx = (__pyx_v_bbuffer[0]);
 
-    /* 
"/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":245
+    /* 
"/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":246
  *         if M > m:
  *             dx = bbuffer[0]
  *             dy = bbuffer[1]             # <<<<<<<<<<<<<< 
@@ -1409,7 +1418,7 @@
  */
     __pyx_v_dy = (__pyx_v_bbuffer[1]);
 
-    /* 
"/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":246
+    /* 
"/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":247
  *             dx = bbuffer[0]
  *             dy = bbuffer[1]
  *             GEOSCoordSeq_setX(cs, M-1, dx)             # <<<<<<<<<<<<<< 
@@ -1418,7 +1427,7 @@
  */
     GEOSCoordSeq_setX(__pyx_v_cs,(__pyx_v_M - 1),__pyx_v_dx);
 
-    /* 
"/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":247
+    /* 
"/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":248
  *             dy = bbuffer[1]
  *             GEOSCoordSeq_setX(cs, M-1, dx)
  *             GEOSCoordSeq_setY(cs, M-1, dy)             # <<<<<<<<<<<<<< 
@@ -1430,7 +1439,7 @@
   }
   __pyx_L6:;
 
-  /* "/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":250
+  /* "/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":251
  * 
  *         # create LinearRing
  *         lr = GEOSGeom_createLinearRing(cs)             # <<<<<<<<<<<<<< 
@@ -1439,7 +1448,7 @@
  */
   __pyx_v_lr = GEOSGeom_createLinearRing(__pyx_v_cs);
 
-  /* "/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":253
+  /* "/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":254
  * 
  *         # create Polygon from LinearRing (assuming no holes)
  *         self._geom = GEOSGeom_createPolygon(lr,NULL,0)             # 
<<<<<<<<<<<<<< 
@@ -1448,7 +1457,7 @@
  */
   ((struct __pyx_obj_5_geos_Polygon *)__pyx_v_self)->__pyx_base._geom = 
GEOSGeom_createPolygon(__pyx_v_lr,NULL,0);
 
-  /* "/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":254
+  /* "/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":255
  *         # create Polygon from LinearRing (assuming no holes)
  *         self._geom = GEOSGeom_createPolygon(lr,NULL,0)
  *         self.boundary = b             # <<<<<<<<<<<<<< 
@@ -1481,7 +1490,7 @@
   PyObject *__pyx_1 = 0;
   Py_INCREF((PyObject *)__pyx_v_self);
 
-  /* "/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":259
+  /* "/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":260
  *     def area(self):
  *         cdef double area
  *         GEOSArea(self._geom, &area)             # <<<<<<<<<<<<<< 
@@ -1490,14 +1499,14 @@
  */
   GEOSArea(((struct __pyx_obj_5_geos_Polygon 
*)__pyx_v_self)->__pyx_base._geom,(&__pyx_v_area));
 
-  /* "/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":260
+  /* "/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":261
  *         cdef double area
  *         GEOSArea(self._geom, &area)
  *         return area             # <<<<<<<<<<<<<< 
  * 
  * cdef _get_coords(GEOSGeom *geom):
  */
-  __pyx_1 = PyFloat_FromDouble(__pyx_v_area); if (unlikely(!__pyx_1)) 
{__pyx_filename = __pyx_f[0]; __pyx_lineno = 260; goto __pyx_L1;}
+  __pyx_1 = PyFloat_FromDouble(__pyx_v_area); if (unlikely(!__pyx_1)) 
{__pyx_filename = __pyx_f[0]; __pyx_lineno = 261; goto __pyx_L1;}
   __pyx_r = __pyx_1;
   __pyx_1 = 0;
   goto __pyx_L0;
@@ -1535,7 +1544,7 @@
   PyObject *__pyx_5 = 0;
   __pyx_v_b = ((PyArrayObject *)Py_None); Py_INCREF(Py_None);
 
-  /* "/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":269
+  /* "/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":270
  *     cdef ndarray b
  *     cdef double *bbuffer
  *     if GEOSGeomTypeId(geom) == GEOS_POLYGON:             # <<<<<<<<<<<<<< 
@@ -1545,7 +1554,7 @@
   __pyx_1 = (GEOSGeomTypeId(__pyx_v_geom) == GEOS_POLYGON);
   if (__pyx_1) {
 
-    /* 
"/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":270
+    /* 
"/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":271
  *     cdef double *bbuffer
  *     if GEOSGeomTypeId(geom) == GEOS_POLYGON:
  *         lr = GEOSGetExteriorRing(geom)             # <<<<<<<<<<<<<< 
@@ -1554,7 +1563,7 @@
  */
     __pyx_v_lr = GEOSGetExteriorRing(__pyx_v_geom);
 
-    /* 
"/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":271
+    /* 
"/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":272
  *     if GEOSGeomTypeId(geom) == GEOS_POLYGON:
  *         lr = GEOSGetExteriorRing(geom)
  *         cs = GEOSGeom_getCoordSeq(lr)             # <<<<<<<<<<<<<< 
@@ -1566,7 +1575,7 @@
   }
   /*else*/ {
 
-    /* 
"/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":273
+    /* 
"/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":274
  *         cs = GEOSGeom_getCoordSeq(lr)
  *     else:
  *         cs = GEOSGeom_getCoordSeq(geom)             # <<<<<<<<<<<<<< 
@@ -1577,7 +1586,7 @@
   }
   __pyx_L2:;
 
-  /* "/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":274
+  /* "/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":275
  *     else:
  *         cs = GEOSGeom_getCoordSeq(geom)
  *     GEOSCoordSeq_getSize(cs, &M)             # <<<<<<<<<<<<<< 
@@ -1586,39 +1595,39 @@
  */
   GEOSCoordSeq_getSize(__pyx_v_cs,(&__pyx_v_M));
 
-  /* "/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":275
+  /* "/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":276
  *         cs = GEOSGeom_getCoordSeq(geom)
  *     GEOSCoordSeq_getSize(cs, &M)
  *     b = numpy.empty((M,2), numpy.float64)             # <<<<<<<<<<<<<< 
  *     bbuffer = <double *>b.data
  *     for i from 0 <= i < M:
  */
-  __pyx_2 = __Pyx_GetName(__pyx_m, __pyx_n_numpy); if (unlikely(!__pyx_2)) 
{__pyx_filename = __pyx_f[0]; __pyx_lineno = 275; goto __pyx_L1;}
-  __pyx_3 = PyObject_GetAttr(__pyx_2, __pyx_n_empty); if (unlikely(!__pyx_3)) 
{__pyx_filename = __pyx_f[0]; __pyx_lineno = 275; goto __pyx_L1;}
+  __pyx_2 = __Pyx_GetName(__pyx_m, __pyx_n_numpy); if (unlikely(!__pyx_2)) 
{__pyx_filename = __pyx_f[0]; __pyx_lineno = 276; goto __pyx_L1;}
+  __pyx_3 = PyObject_GetAttr(__pyx_2, __pyx_n_empty); if (unlikely(!__pyx_3)) 
{__pyx_filename = __pyx_f[0]; __pyx_lineno = 276; goto __pyx_L1;}
   Py_DECREF(__pyx_2); __pyx_2 = 0;
-  __pyx_2 = PyLong_FromUnsignedLong(__pyx_v_M); if (unlikely(!__pyx_2)) 
{__pyx_filename = __pyx_f[0]; __pyx_lineno = 275; goto __pyx_L1;}
-  __pyx_4 = PyTuple_New(2); if (unlikely(!__pyx_4)) {__pyx_filename = 
__pyx_f[0]; __pyx_lineno = 275; goto __pyx_L1;}
+  __pyx_2 = PyLong_FromUnsignedLong(__pyx_v_M); if (unlikely(!__pyx_2)) 
{__pyx_filename = __pyx_f[0]; __pyx_lineno = 276; goto __pyx_L1;}
+  __pyx_4 = PyTuple_New(2); if (unlikely(!__pyx_4)) {__pyx_filename = 
__pyx_f[0]; __pyx_lineno = 276; goto __pyx_L1;}
   PyTuple_SET_ITEM(__pyx_4, 0, __pyx_2);
   Py_INCREF(__pyx_num_2);
   PyTuple_SET_ITEM(__pyx_4, 1, __pyx_num_2);
   __pyx_2 = 0;
-  __pyx_2 = __Pyx_GetName(__pyx_m, __pyx_n_numpy); if (unlikely(!__pyx_2)) 
{__pyx_filename = __pyx_f[0]; __pyx_lineno = 275; goto __pyx_L1;}
-  __pyx_5 = PyObject_GetAttr(__pyx_2, __pyx_n_float64); if 
(unlikely(!__pyx_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 275; goto 
__pyx_L1;}
+  __pyx_2 = __Pyx_GetName(__pyx_m, __pyx_n_numpy); if (unlikely(!__pyx_2)) 
{__pyx_filename = __pyx_f[0]; __pyx_lineno = 276; goto __pyx_L1;}
+  __pyx_5 = PyObject_GetAttr(__pyx_2, __pyx_n_float64); if 
(unlikely(!__pyx_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 276; goto 
__pyx_L1;}
   Py_DECREF(__pyx_2); __pyx_2 = 0;
-  __pyx_2 = PyTuple_New(2); if (unlikely(!__pyx_2)) {__pyx_filename = 
__pyx_f[0]; __pyx_lineno = 275; goto __pyx_L1;}
+  __pyx_2 = PyTuple_New(2); if (unlikely(!__pyx_2)) {__pyx_filename = 
__pyx_f[0]; __pyx_lineno = 276; goto __pyx_L1;}
   PyTuple_SET_ITEM(__pyx_2, 0, __pyx_4);
   PyTuple_SET_ITEM(__pyx_2, 1, __pyx_5);
   __pyx_4 = 0;
   __pyx_5 = 0;
-  __pyx_4 = PyObject_CallObject(__pyx_3, __pyx_2); if (unlikely(!__pyx_4)) 
{__pyx_filename = __pyx_f[0]; __pyx_lineno = 275; goto __pyx_L1;}
+  __pyx_4 = PyObject_CallObject(__pyx_3, __pyx_2); if (unlikely(!__pyx_4)) 
{__pyx_filename = __pyx_f[0]; __pyx_lineno = 276; goto __pyx_L1;}
   Py_DECREF(__pyx_3); __pyx_3 = 0;
   Py_DECREF(__pyx_2); __pyx_2 = 0;
-  if (!__Pyx_TypeTest(__pyx_4, __pyx_ptype_5_geos_ndarray)) {__pyx_filename = 
__pyx_f[0]; __pyx_lineno = 275; goto __pyx_L1;}
+  if (!__Pyx_TypeTest(__pyx_4, __pyx_ptype_5_geos_ndarray)) {__pyx_filename = 
__pyx_f[0]; __pyx_lineno = 276; goto __pyx_L1;}
   Py_DECREF(((PyObject *)__pyx_v_b));
   __pyx_v_b = ((PyArrayObject *)__pyx_4);
   __pyx_4 = 0;
 
-  /* "/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":276
+  /* "/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":277
  *     GEOSCoordSeq_getSize(cs, &M)
  *     b = numpy.empty((M,2), numpy.float64)
  *     bbuffer = <double *>b.data             # <<<<<<<<<<<<<< 
@@ -1627,7 +1636,7 @@
  */
   __pyx_v_bbuffer = ((double (*))__pyx_v_b->data);
 
-  /* "/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":277
+  /* "/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":278
  *     b = numpy.empty((M,2), numpy.float64)
  *     bbuffer = <double *>b.data
  *     for i from 0 <= i < M:             # <<<<<<<<<<<<<< 
@@ -1636,7 +1645,7 @@
  */
   for (__pyx_v_i = 0; __pyx_v_i < __pyx_v_M; __pyx_v_i++) {
 
-    /* 
"/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":278
+    /* 
"/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":279
  *     bbuffer = <double *>b.data
  *     for i from 0 <= i < M:
  *         GEOSCoordSeq_getX(cs, i, &dx)             # <<<<<<<<<<<<<< 
@@ -1645,7 +1654,7 @@
  */
     GEOSCoordSeq_getX(__pyx_v_cs,__pyx_v_i,(&__pyx_v_dx));
 
-    /* 
"/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":279
+    /* 
"/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":280
  *     for i from 0 <= i < M:
  *         GEOSCoordSeq_getX(cs, i, &dx)
  *         GEOSCoordSeq_getY(cs, i, &dy)             # <<<<<<<<<<<<<< 
@@ -1654,37 +1663,28 @@
  */
     GEOSCoordSeq_getY(__pyx_v_cs,__pyx_v_i,(&__pyx_v_dy));
 
-    /* 
"/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":280
+    /* 
"/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":281
  *         GEOSCoordSeq_getX(cs, i, &dx)
  *         GEOSCoordSeq_getY(cs, i, &dy)
  *         bbuffer[2*i] = dx             # <<<<<<<<<<<<<< 
  *         bbuffer[2*i+1] = dy
- *     GEOSCoordSeq_destroy(cs)
+ *     return b
  */
     (__pyx_v_bbuffer[(2 * __pyx_v_i)]) = __pyx_v_dx;
 
-    /* 
"/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":281
+    /* 
"/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":282
  *         GEOSCoordSeq_getY(cs, i, &dy)
  *         bbuffer[2*i] = dx
  *         bbuffer[2*i+1] = dy             # <<<<<<<<<<<<<< 
- *     GEOSCoordSeq_destroy(cs)
  *     return b
+ * 
  */
     (__pyx_v_bbuffer[((2 * __pyx_v_i) + 1)]) = __pyx_v_dy;
   }
 
-  /* "/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":282
+  /* "/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":283
  *         bbuffer[2*i] = dx
  *         bbuffer[2*i+1] = dy
- *     GEOSCoordSeq_destroy(cs)             # <<<<<<<<<<<<<< 
- *     return b
- * 
- */
-  GEOSCoordSeq_destroy(__pyx_v_cs);
-
-  /* "/Users/jsw/python/matplotlib/toolkits/basemap-testing/src/_geos.pyx":283
- *         bbuffer[2*i+1] = dy
- *     GEOSCoordSeq_destroy(cs)
  *     return b             # <<<<<<<<<<<<<< 
  * 
  * cdef class LineString(BaseGeometry):
@@ -2696,8 +2696,8 @@
   if (PyObject_SetAttrString(__pyx_m, "BaseGeometry", (PyObject 
*)&__pyx_type_5_geos_BaseGeometry) < 0) {__pyx_filename = __pyx_f[0]; 
__pyx_lineno = 120; goto __pyx_L1;}
   __pyx_ptype_5_geos_BaseGeometry = &__pyx_type_5_geos_BaseGeometry;
   __pyx_type_5_geos_Polygon.tp_base = __pyx_ptype_5_geos_BaseGeometry;
-  if (PyType_Ready(&__pyx_type_5_geos_Polygon) < 0) {__pyx_filename = 
__pyx_f[0]; __pyx_lineno = 206; goto __pyx_L1;}
-  if (PyObject_SetAttrString(__pyx_m, "Polygon", (PyObject 
*)&__pyx_type_5_geos_Polygon) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 
206; goto __pyx_L1;}
+  if (PyType_Ready(&__pyx_type_5_geos_Polygon) < 0) {__pyx_filename = 
__pyx_f[0]; __pyx_lineno = 207; goto __pyx_L1;}
+  if (PyObject_SetAttrString(__pyx_m, "Polygon", (PyObject 
*)&__pyx_type_5_geos_Polygon) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 
207; goto __pyx_L1;}
   __pyx_ptype_5_geos_Polygon = &__pyx_type_5_geos_Polygon;
   __pyx_type_5_geos_LineString.tp_base = __pyx_ptype_5_geos_BaseGeometry;
   if (PyType_Ready(&__pyx_type_5_geos_LineString) < 0) {__pyx_filename = 
__pyx_f[0]; __pyx_lineno = 285; goto __pyx_L1;}

Modified: trunk/toolkits/basemap-testing/src/_geos.pyx
===================================================================
--- trunk/toolkits/basemap-testing/src/_geos.pyx        2007-11-14 07:45:12 UTC 
(rev 4264)
+++ trunk/toolkits/basemap-testing/src/_geos.pyx        2007-11-14 13:05:06 UTC 
(rev 4265)
@@ -190,6 +190,7 @@
         else:
             type = PyString_FromString(GEOSGeomType(g3))
             raise NotImplementedError("intersections of type '%s' not yet 
implemented" % (type))
+        GEOSGeom_destroy(g3)
         return pout
 
     def get_coords(self):
@@ -206,7 +207,7 @@
 cdef class Polygon(BaseGeometry):
 
     def __init__(self, ndarray b):
-        cdef unsigned int M, m, n, i
+        cdef unsigned int M, m, i
         cdef double dx, dy
         cdef double *bbuffer
         cdef GEOSCoordSeq *cs
@@ -279,7 +280,6 @@
         GEOSCoordSeq_getY(cs, i, &dy)
         bbuffer[2*i] = dx
         bbuffer[2*i+1] = dy
-    GEOSCoordSeq_destroy(cs)
     return b
 
 cdef class LineString(BaseGeometry):


This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.

-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
_______________________________________________
Matplotlib-checkins mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/matplotlib-checkins

Reply via email to