# HG changeset patch # User Bram Moolenaar # Date 1373108550 -7200 # Node ID 80bab8b1a30db72b7eda880b0442ab0b0f4a1611 # Parent 0d4e0cde36e15e6cc585b839fe1685e7030d129e updated for version 7.3.1312 Problem: Not giving correct error messages for SystemExit(). Solution: Move E858 into an else. (Ken Takata) diff --git a/src/if_py_both.h b/src/if_py_both.h --- a/src/if_py_both.h +++ b/src/if_py_both.h @@ -5103,14 +5103,17 @@ run_eval(const char *cmd, typval_T *rett run_ret = PyRun_String((char *)cmd, Py_eval_input, globals, globals); if (run_ret == NULL) { - if (PyErr_ExceptionMatches(PyExc_SystemExit)) + if (PyErr_Occurred() && PyErr_ExceptionMatches(PyExc_SystemExit)) { EMSG2(_(e_py_systemexit), "python"); PyErr_Clear(); } - if (PyErr_Occurred() && !msg_silent) - PyErr_PrintEx(0); - EMSG(_("E858: Eval did not return a valid python object")); + else + { + if (PyErr_Occurred() && !msg_silent) + PyErr_PrintEx(0); + EMSG(_("E858: Eval did not return a valid python object")); + } } else { diff --git a/src/version.c b/src/version.c --- 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 */ /**/ + 1312, +/**/ 1311, /**/ 1310,