Blob Blame History Raw
To: vim_dev@googlegroups.com
Subject: Patch 7.3.1053
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
------------

Patch 7.3.1053
Problem:    Python: no flag for types with tp_traverse+tp_clear.
Solution:   Python patch 14: Add Py_TPFLAGS_HAVE_GC. (ZyX)
Files:	    src/if_py_both.h


*** ../vim-7.3.1052/src/if_py_both.h	2013-05-29 22:52:29.000000000 +0200
--- src/if_py_both.h	2013-05-29 22:55:08.000000000 +0200
***************
*** 4461,4467 ****
      vim_memset(&IterType, 0, sizeof(IterType));
      IterType.tp_name = "vim.iter";
      IterType.tp_basicsize = sizeof(IterObject);
!     IterType.tp_flags = Py_TPFLAGS_DEFAULT;
      IterType.tp_doc = "generic iterator object";
      IterType.tp_iter = (getiterfunc)IterIter;
      IterType.tp_iternext = (iternextfunc)IterNext;
--- 4461,4467 ----
      vim_memset(&IterType, 0, sizeof(IterType));
      IterType.tp_name = "vim.iter";
      IterType.tp_basicsize = sizeof(IterObject);
!     IterType.tp_flags = Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_GC;
      IterType.tp_doc = "generic iterator object";
      IterType.tp_iter = (getiterfunc)IterIter;
      IterType.tp_iternext = (iternextfunc)IterNext;
***************
*** 4495,4501 ****
      WindowType.tp_basicsize = sizeof(WindowObject);
      WindowType.tp_dealloc = (destructor)WindowDestructor;
      WindowType.tp_repr = (reprfunc)WindowRepr;
!     WindowType.tp_flags = Py_TPFLAGS_DEFAULT;
      WindowType.tp_doc = "vim Window object";
      WindowType.tp_methods = WindowMethods;
      WindowType.tp_traverse = (traverseproc)WindowTraverse;
--- 4495,4501 ----
      WindowType.tp_basicsize = sizeof(WindowObject);
      WindowType.tp_dealloc = (destructor)WindowDestructor;
      WindowType.tp_repr = (reprfunc)WindowRepr;
!     WindowType.tp_flags = Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_GC;
      WindowType.tp_doc = "vim Window object";
      WindowType.tp_methods = WindowMethods;
      WindowType.tp_traverse = (traverseproc)WindowTraverse;
***************
*** 4558,4564 ****
      RangeType.tp_repr = (reprfunc)RangeRepr;
      RangeType.tp_as_sequence = &RangeAsSeq;
      RangeType.tp_as_mapping = &RangeAsMapping;
!     RangeType.tp_flags = Py_TPFLAGS_DEFAULT;
      RangeType.tp_doc = "vim Range object";
      RangeType.tp_methods = RangeMethods;
      RangeType.tp_traverse = (traverseproc)RangeTraverse;
--- 4558,4564 ----
      RangeType.tp_repr = (reprfunc)RangeRepr;
      RangeType.tp_as_sequence = &RangeAsSeq;
      RangeType.tp_as_mapping = &RangeAsMapping;
!     RangeType.tp_flags = Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_GC;
      RangeType.tp_doc = "vim Range object";
      RangeType.tp_methods = RangeMethods;
      RangeType.tp_traverse = (traverseproc)RangeTraverse;
***************
*** 4637,4643 ****
      vim_memset(&OptionsType, 0, sizeof(OptionsType));
      OptionsType.tp_name = "vim.options";
      OptionsType.tp_basicsize = sizeof(OptionsObject);
!     OptionsType.tp_flags = Py_TPFLAGS_DEFAULT;
      OptionsType.tp_doc = "object for manipulating options";
      OptionsType.tp_as_mapping = &OptionsAsMapping;
      OptionsType.tp_dealloc = (destructor)OptionsDestructor;
--- 4637,4643 ----
      vim_memset(&OptionsType, 0, sizeof(OptionsType));
      OptionsType.tp_name = "vim.options";
      OptionsType.tp_basicsize = sizeof(OptionsObject);
!     OptionsType.tp_flags = Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_GC;
      OptionsType.tp_doc = "object for manipulating options";
      OptionsType.tp_as_mapping = &OptionsAsMapping;
      OptionsType.tp_dealloc = (destructor)OptionsDestructor;
*** ../vim-7.3.1052/src/version.c	2013-05-29 22:52:29.000000000 +0200
--- src/version.c	2013-05-29 22:54:46.000000000 +0200
***************
*** 730,731 ****
--- 730,733 ----
  {   /* Add new patch number below this line */
+ /**/
+     1053,
  /**/

-- 
hundred-and-one symptoms of being an internet addict:
26. You check your mail. It says "no new messages." So you check it again.

 /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net   \\\
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\  an exciting new programming language -- http://www.Zimbu.org        ///
 \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///