From de323093e1be165a3eadd1ab3d02942358cd97bf Mon Sep 17 00:00:00 2001 From: Bram Moolenaar Date: Thu, 9 Nov 2017 19:56:08 +0100 Subject: patch 8.0.1280: Python None cannot be converted to a Vim type Problem: Python None cannot be converted to a Vim type. Solution: Convert it to v:none. (Ken Takata) --- src/if_py_both.h | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'src/if_py_both.h') diff --git a/src/if_py_both.h b/src/if_py_both.h index e717646d05..1801967268 100644 --- a/src/if_py_both.h +++ b/src/if_py_both.h @@ -5713,7 +5713,7 @@ run_eval(const char *cmd, typval_T *rettv } else { - if (run_ret != Py_None && ConvertFromPyObject(run_ret, rettv) == -1) + if (ConvertFromPyObject(run_ret, rettv) == -1) EMSG(_("E859: Failed to convert returned python object to vim value")); Py_DECREF(run_ret); } @@ -6231,6 +6231,11 @@ _ConvertFromPyObject(PyObject *obj, typval_T *tv, PyObject *lookup_dict) Py_DECREF(num); } + else if (obj == Py_None) + { + tv->v_type = VAR_SPECIAL; + tv->vval.v_number = VVAL_NONE; + } else { PyErr_FORMAT(PyExc_TypeError, -- cgit v1.2.3