changeset 3788:5edf3c51aa93 v7.3.652

updated for version 7.3.652 Problem: Workaround for Python crash isn't perfect. Solution: Change the type of the length argument. (Sean Estabrooks)
author Bram Moolenaar <bram@vim.org>
date Wed, 05 Sep 2012 17:28:21 +0200
parents 8c01526822e0
children ff2b3113f0bf
files src/if_py_both.h src/version.c
diffstat 2 files changed, 3 insertions(+), 6 deletions(-) [+]
line wrap: on
line diff
--- a/src/if_py_both.h
+++ b/src/if_py_both.h
@@ -74,18 +74,13 @@ static struct PyMethodDef OutputMethods[
     static PyObject *
 OutputWrite(PyObject *self, PyObject *args)
 {
-    int len;
+    Py_ssize_t len;
     char *str = NULL;
     int error = ((OutputObject *)(self))->error;
 
     if (!PyArg_ParseTuple(args, "et#", ENC_OPT, &str, &len))
 	return NULL;
 
-    /* TODO: This works around a gcc optimizer problem and avoids Vim
-     * from crashing.  Should find a real solution. */
-    if (str == NULL)
-	return NULL;
-
     Py_BEGIN_ALLOW_THREADS
     Python_Lock_Vim();
     writer((writefn)(error ? emsg : msg), (char_u *)str, len);
--- a/src/version.c
+++ b/src/version.c
@@ -720,6 +720,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    652,
+/**/
     651,
 /**/
     650,