mirror of
https://github.com/vim/vim.git
synced 2025-07-26 11:04:33 -04:00
updated for version 7.3.950
Problem: Python: Stack trace printer can't handle messages. Solution: Make KeyErrors use PyErr_SetObject. (ZyX)
This commit is contained in:
parent
5e538ecd5e
commit
4d188da22b
@ -734,7 +734,7 @@ DictionaryItem(PyObject *self, PyObject *keyObject)
|
|||||||
|
|
||||||
if (di == NULL)
|
if (di == NULL)
|
||||||
{
|
{
|
||||||
PyErr_SetString(PyExc_KeyError, _("no such key in dictionary"));
|
PyErr_SetObject(PyExc_KeyError, keyObject);
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -767,7 +767,7 @@ DictionaryAssItem(PyObject *self, PyObject *keyObject, PyObject *valObject)
|
|||||||
if (di == NULL)
|
if (di == NULL)
|
||||||
{
|
{
|
||||||
DICTKEY_UNREF
|
DICTKEY_UNREF
|
||||||
PyErr_SetString(PyExc_IndexError, _("no such key in dictionary"));
|
PyErr_SetObject(PyExc_KeyError, keyObject);
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
hi = hash_find(&d->dv_hashtab, di->di_key);
|
hi = hash_find(&d->dv_hashtab, di->di_key);
|
||||||
@ -1353,7 +1353,7 @@ OptionsItem(OptionsObject *this, PyObject *keyObject)
|
|||||||
|
|
||||||
if (flags == 0)
|
if (flags == 0)
|
||||||
{
|
{
|
||||||
PyErr_SetString(PyExc_KeyError, "Option does not exist in given scope");
|
PyErr_SetObject(PyExc_KeyError, keyObject);
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1447,7 +1447,7 @@ OptionsAssItem(OptionsObject *this, PyObject *keyObject, PyObject *valObject)
|
|||||||
|
|
||||||
if (flags == 0)
|
if (flags == 0)
|
||||||
{
|
{
|
||||||
PyErr_SetString(PyExc_KeyError, "Option does not exist in given scope");
|
PyErr_SetObject(PyExc_KeyError, keyObject);
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -3145,7 +3145,7 @@ BufMapItem(PyObject *self UNUSED, PyObject *keyObject)
|
|||||||
return BufferNew(b);
|
return BufferNew(b);
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
PyErr_SetString(PyExc_KeyError, _("no such buffer"));
|
PyErr_SetObject(PyExc_KeyError, keyObject);
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -155,6 +155,7 @@ struct PyMethodDef { Py_ssize_t a; };
|
|||||||
# define PyErr_Occurred dll_PyErr_Occurred
|
# define PyErr_Occurred dll_PyErr_Occurred
|
||||||
# define PyErr_SetNone dll_PyErr_SetNone
|
# define PyErr_SetNone dll_PyErr_SetNone
|
||||||
# define PyErr_SetString dll_PyErr_SetString
|
# define PyErr_SetString dll_PyErr_SetString
|
||||||
|
# define PyErr_SetObject dll_PyErr_SetObject
|
||||||
# define PyEval_InitThreads dll_PyEval_InitThreads
|
# define PyEval_InitThreads dll_PyEval_InitThreads
|
||||||
# define PyEval_RestoreThread dll_PyEval_RestoreThread
|
# define PyEval_RestoreThread dll_PyEval_RestoreThread
|
||||||
# define PyEval_SaveThread dll_PyEval_SaveThread
|
# define PyEval_SaveThread dll_PyEval_SaveThread
|
||||||
@ -260,6 +261,7 @@ static PyObject*(*dll_PyErr_NoMemory)(void);
|
|||||||
static PyObject*(*dll_PyErr_Occurred)(void);
|
static PyObject*(*dll_PyErr_Occurred)(void);
|
||||||
static void(*dll_PyErr_SetNone)(PyObject *);
|
static void(*dll_PyErr_SetNone)(PyObject *);
|
||||||
static void(*dll_PyErr_SetString)(PyObject *, const char *);
|
static void(*dll_PyErr_SetString)(PyObject *, const char *);
|
||||||
|
static void(*dll_PyErr_SetObject)(PyObject *, PyObject *);
|
||||||
static void(*dll_PyEval_InitThreads)(void);
|
static void(*dll_PyEval_InitThreads)(void);
|
||||||
static void(*dll_PyEval_RestoreThread)(PyThreadState *);
|
static void(*dll_PyEval_RestoreThread)(PyThreadState *);
|
||||||
static PyThreadState*(*dll_PyEval_SaveThread)(void);
|
static PyThreadState*(*dll_PyEval_SaveThread)(void);
|
||||||
@ -393,6 +395,7 @@ static struct
|
|||||||
{"PyErr_Occurred", (PYTHON_PROC*)&dll_PyErr_Occurred},
|
{"PyErr_Occurred", (PYTHON_PROC*)&dll_PyErr_Occurred},
|
||||||
{"PyErr_SetNone", (PYTHON_PROC*)&dll_PyErr_SetNone},
|
{"PyErr_SetNone", (PYTHON_PROC*)&dll_PyErr_SetNone},
|
||||||
{"PyErr_SetString", (PYTHON_PROC*)&dll_PyErr_SetString},
|
{"PyErr_SetString", (PYTHON_PROC*)&dll_PyErr_SetString},
|
||||||
|
{"PyErr_SetObject", (PYTHON_PROC*)&dll_PyErr_SetObject},
|
||||||
{"PyEval_InitThreads", (PYTHON_PROC*)&dll_PyEval_InitThreads},
|
{"PyEval_InitThreads", (PYTHON_PROC*)&dll_PyEval_InitThreads},
|
||||||
{"PyEval_RestoreThread", (PYTHON_PROC*)&dll_PyEval_RestoreThread},
|
{"PyEval_RestoreThread", (PYTHON_PROC*)&dll_PyEval_RestoreThread},
|
||||||
{"PyEval_SaveThread", (PYTHON_PROC*)&dll_PyEval_SaveThread},
|
{"PyEval_SaveThread", (PYTHON_PROC*)&dll_PyEval_SaveThread},
|
||||||
|
@ -128,6 +128,7 @@ static void init_structs(void);
|
|||||||
# define PyErr_Occurred py3_PyErr_Occurred
|
# define PyErr_Occurred py3_PyErr_Occurred
|
||||||
# define PyErr_SetNone py3_PyErr_SetNone
|
# define PyErr_SetNone py3_PyErr_SetNone
|
||||||
# define PyErr_SetString py3_PyErr_SetString
|
# define PyErr_SetString py3_PyErr_SetString
|
||||||
|
# define PyErr_SetObject py3_PyErr_SetObject
|
||||||
# define PyEval_InitThreads py3_PyEval_InitThreads
|
# define PyEval_InitThreads py3_PyEval_InitThreads
|
||||||
# define PyEval_RestoreThread py3_PyEval_RestoreThread
|
# define PyEval_RestoreThread py3_PyEval_RestoreThread
|
||||||
# define PyEval_SaveThread py3_PyEval_SaveThread
|
# define PyEval_SaveThread py3_PyEval_SaveThread
|
||||||
@ -250,6 +251,7 @@ static int (*py3_PySlice_GetIndicesEx)(PyObject *r, Py_ssize_t length,
|
|||||||
static PyObject* (*py3_PyErr_NoMemory)(void);
|
static PyObject* (*py3_PyErr_NoMemory)(void);
|
||||||
static void (*py3_Py_Finalize)(void);
|
static void (*py3_Py_Finalize)(void);
|
||||||
static void (*py3_PyErr_SetString)(PyObject *, const char *);
|
static void (*py3_PyErr_SetString)(PyObject *, const char *);
|
||||||
|
static void (*py3_PyErr_SetObject)(PyObject *, PyObject *);
|
||||||
static int (*py3_PyRun_SimpleString)(char *);
|
static int (*py3_PyRun_SimpleString)(char *);
|
||||||
static PyObject* (*py3_PyRun_String)(char *, int, PyObject *, PyObject *);
|
static PyObject* (*py3_PyRun_String)(char *, int, PyObject *, PyObject *);
|
||||||
static PyObject* (*py3_PyList_GetItem)(PyObject *, Py_ssize_t);
|
static PyObject* (*py3_PyList_GetItem)(PyObject *, Py_ssize_t);
|
||||||
@ -379,6 +381,7 @@ static struct
|
|||||||
{"PyErr_NoMemory", (PYTHON_PROC*)&py3_PyErr_NoMemory},
|
{"PyErr_NoMemory", (PYTHON_PROC*)&py3_PyErr_NoMemory},
|
||||||
{"Py_Finalize", (PYTHON_PROC*)&py3_Py_Finalize},
|
{"Py_Finalize", (PYTHON_PROC*)&py3_Py_Finalize},
|
||||||
{"PyErr_SetString", (PYTHON_PROC*)&py3_PyErr_SetString},
|
{"PyErr_SetString", (PYTHON_PROC*)&py3_PyErr_SetString},
|
||||||
|
{"PyErr_SetObject", (PYTHON_PROC*)&py3_PyErr_SetObject},
|
||||||
{"PyRun_SimpleString", (PYTHON_PROC*)&py3_PyRun_SimpleString},
|
{"PyRun_SimpleString", (PYTHON_PROC*)&py3_PyRun_SimpleString},
|
||||||
{"PyRun_String", (PYTHON_PROC*)&py3_PyRun_String},
|
{"PyRun_String", (PYTHON_PROC*)&py3_PyRun_String},
|
||||||
{"PyList_GetItem", (PYTHON_PROC*)&py3_PyList_GetItem},
|
{"PyList_GetItem", (PYTHON_PROC*)&py3_PyList_GetItem},
|
||||||
|
@ -728,6 +728,8 @@ static char *(features[]) =
|
|||||||
|
|
||||||
static int included_patches[] =
|
static int included_patches[] =
|
||||||
{ /* Add new patch number below this line */
|
{ /* Add new patch number below this line */
|
||||||
|
/**/
|
||||||
|
950,
|
||||||
/**/
|
/**/
|
||||||
949,
|
949,
|
||||||
/**/
|
/**/
|
||||||
|
Loading…
x
Reference in New Issue
Block a user