[vim] - patchlevel 786
Karsten Hopp
karsten at fedoraproject.org
Thu Jan 31 11:12:14 UTC 2013
commit 402e05d61c48fcacaa4f5451dbce62f42f3407fe
Author: Karsten Hopp <karsten at redhat.com>
Date: Thu Jan 31 12:11:55 2013 +0100
- patchlevel 786
7.3.786 | 93 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 93 insertions(+), 0 deletions(-)
---
diff --git a/7.3.786 b/7.3.786
new file mode 100644
index 0000000..a698821
--- /dev/null
+++ b/7.3.786
@@ -0,0 +1,93 @@
+To: vim_dev at googlegroups.com
+Subject: Patch 7.3.786
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.3.786
+Problem: Python threads don't run in the background (issue 103).
+Solution: Move the statements to manipulate thread state.
+Files: src/if_python.c
+
+
+*** ../vim-7.3.785/src/if_python.c 2012-10-21 01:46:56.000000000 +0200
+--- src/if_python.c 2013-01-30 11:38:06.000000000 +0100
+***************
+*** 740,751 ****
+ #else
+ PyMac_Initialize();
+ #endif
+! /* Initialise threads, and save the state using PyGILState_Ensure.
+! * Without the call to PyGILState_Ensure, thread specific state (such
+! * as the system trace hook), will be lost between invocations of
+! * Python code. */
+ PyEval_InitThreads();
+- pygilstate = PyGILState_Ensure();
+ #ifdef DYNAMIC_PYTHON
+ get_exceptions();
+ #endif
+--- 740,750 ----
+ #else
+ PyMac_Initialize();
+ #endif
+! /* Initialise threads, and below save the state using
+! * PyGILState_Ensure. Without the call to PyGILState_Ensure, thread
+! * specific state (such as the system trace hook), will be lost
+! * between invocations of Python code. */
+ PyEval_InitThreads();
+ #ifdef DYNAMIC_PYTHON
+ get_exceptions();
+ #endif
+***************
+*** 756,761 ****
+--- 755,764 ----
+ if (PythonMod_Init())
+ goto fail;
+
++ /* The first python thread is vim's, release the lock. */
++ Python_SaveThread();
++ pygilstate = PyGILState_Ensure();
++
+ globals = PyModule_GetDict(PyImport_AddModule("__main__"));
+
+ /* Remove the element from sys.path that was added because of our
+***************
+*** 764,771 ****
+ * the current directory in sys.path. */
+ PyRun_SimpleString("import sys; sys.path = filter(lambda x: x != '/must>not&exist', sys.path)");
+
+! /* the first python thread is vim's, release the lock */
+! Python_SaveThread();
+
+ initialised = 1;
+ }
+--- 767,773 ----
+ * the current directory in sys.path. */
+ PyRun_SimpleString("import sys; sys.path = filter(lambda x: x != '/must>not&exist', sys.path)");
+
+! PyGILState_Release(pygilstate);
+
+ initialised = 1;
+ }
+*** ../vim-7.3.785/src/version.c 2013-01-25 20:10:58.000000000 +0100
+--- src/version.c 2013-01-30 11:44:04.000000000 +0100
+***************
+*** 727,728 ****
+--- 727,730 ----
+ { /* Add new patch number below this line */
++ /**/
++ 786,
+ /**/
+
+--
+ARTHUR: I command you as King of the Britons to stand aside!
+BLACK KNIGHT: I move for no man.
+ The Quest for the Holy Grail (Monty Python)
+
+ /// Bram Moolenaar -- Bram at 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 ///
More information about the scm-commits
mailing list