changeset 4419:58b74ab7f29d v7.3.958

updated for version 7.3.958 Problem: Python: Iteration destructor not set. Solution: Put IterDestructor to use. (ZyX)
author Bram Moolenaar <bram@vim.org>
date Wed, 15 May 2013 19:07:47 +0200
parents 083cca6a05bc
children bdbdab08cc4d
files src/if_py_both.h src/version.c
diffstat 2 files changed, 3 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/src/if_py_both.h
+++ b/src/if_py_both.h
@@ -566,7 +566,6 @@ IterNew(void *start, destructorfun destr
     return (PyObject *)(self);
 }
 
-#if 0 /* unused */
     static void
 IterDestructor(PyObject *self)
 {
@@ -576,7 +575,6 @@ IterDestructor(PyObject *self)
 
     DESTRUCTOR_FINISH(self);
 }
-#endif
 
     static PyObject *
 IterNext(PyObject *self)
@@ -3823,6 +3821,7 @@ init_structs(void)
     IterType.tp_doc = "generic iterator object";
     IterType.tp_iter = IterIter;
     IterType.tp_iternext = IterNext;
+    IterType.tp_dealloc = IterDestructor;
 
     vim_memset(&BufferType, 0, sizeof(BufferType));
     BufferType.tp_name = "vim.buffer";
--- a/src/version.c
+++ b/src/version.c
@@ -729,6 +729,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    958,
+/**/
     957,
 /**/
     956,