mirror of
https://github.com/vim/vim.git
synced 2025-09-24 03:44:06 -04:00
updated for version 7.4.176
Problem: Dictionary.update() thows an error when used without arguments. Python programmers don't expect that. Solution: Make Dictionary.update() without arguments do nothing. (ZyX)
This commit is contained in:
@@ -1918,11 +1918,17 @@ DictionaryUpdate(DictionaryObject *self, PyObject *args, PyObject *kwargs)
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
PyObject *obj;
|
PyObject *obj = NULL;
|
||||||
|
|
||||||
if (!PyArg_ParseTuple(args, "O", &obj))
|
if (!PyArg_ParseTuple(args, "|O", &obj))
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
|
if (obj == NULL)
|
||||||
|
{
|
||||||
|
Py_INCREF(Py_None);
|
||||||
|
return Py_None;
|
||||||
|
}
|
||||||
|
|
||||||
if (PyObject_HasAttrString(obj, "keys"))
|
if (PyObject_HasAttrString(obj, "keys"))
|
||||||
return DictionaryUpdate(self, NULL, obj);
|
return DictionaryUpdate(self, NULL, obj);
|
||||||
else
|
else
|
||||||
|
@@ -39,6 +39,7 @@ STARTTEST
|
|||||||
py << EOF
|
py << EOF
|
||||||
d=vim.bindeval('d')
|
d=vim.bindeval('d')
|
||||||
d['1']='asd'
|
d['1']='asd'
|
||||||
|
d.update() # Must not do anything, including throwing errors
|
||||||
d.update(b=[1, 2, f])
|
d.update(b=[1, 2, f])
|
||||||
d.update((('-1', {'a': 1}),))
|
d.update((('-1', {'a': 1}),))
|
||||||
d.update({'0': -1})
|
d.update({'0': -1})
|
||||||
|
@@ -33,6 +33,7 @@ STARTTEST
|
|||||||
py3 << EOF
|
py3 << EOF
|
||||||
d=vim.bindeval('d')
|
d=vim.bindeval('d')
|
||||||
d['1']='asd'
|
d['1']='asd'
|
||||||
|
d.update() # Must not do anything, including throwing errors
|
||||||
d.update(b=[1, 2, f])
|
d.update(b=[1, 2, f])
|
||||||
d.update((('-1', {'a': 1}),))
|
d.update((('-1', {'a': 1}),))
|
||||||
d.update({'0': -1})
|
d.update({'0': -1})
|
||||||
|
@@ -738,6 +738,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 */
|
||||||
|
/**/
|
||||||
|
176,
|
||||||
/**/
|
/**/
|
||||||
175,
|
175,
|
||||||
/**/
|
/**/
|
||||||
|
Reference in New Issue
Block a user