Mercurial > cpython-lru_cache-weakref
diff Python/ceval.c @ 2894:4095782c940e legacy-trunk
empty kw dict is ok for builtins
| author | Guido van Rossum <guido@python.org> |
|---|---|
| date | Fri, 04 Aug 1995 04:14:47 +0000 |
| parents | d3b07ba3e12d |
| children | d249111d4ccc |
line wrap: on
line diff
--- a/Python/ceval.c Fri Aug 04 04:13:00 1995 +0000 +++ b/Python/ceval.c Fri Aug 04 04:14:47 1995 +0000 @@ -2281,6 +2281,11 @@ else INCREF(arg); + if (kw != NULL && !is_dictobject(kw)) { + err_setstr(TypeError, "keyword list must be a dictionary"); + return NULL; + } + if (call = func->ob_type->tp_call) result = (*call)(func, arg, kw); else if (is_instancemethodobject(func) || is_funcobject(func)) @@ -2316,7 +2321,7 @@ } if (flags & METH_KEYWORDS) return (*(PyCFunctionWithKeywords)meth)(self, arg, kw); - if (kw != NULL) { + if (kw != NULL && getmappingsize(kw) != 0) { err_setstr(TypeError, "this function takes no keyword arguments"); return NULL;
