mirror of https://github.com/python/cpython
gh-112026: Restore removed _PyDict_GetItemStringWithError() (#112119)
Restore the removed _PyDict_GetItemStringWithError() function. It is used by numpy.
This commit is contained in:
parent
ec05507367
commit
bd2f1485b0
|
@ -34,7 +34,7 @@ typedef struct {
|
|||
|
||||
PyAPI_FUNC(PyObject *) _PyDict_GetItem_KnownHash(PyObject *mp, PyObject *key,
|
||||
Py_hash_t hash);
|
||||
|
||||
PyAPI_FUNC(PyObject *) _PyDict_GetItemStringWithError(PyObject *, const char *);
|
||||
PyAPI_FUNC(PyObject *) PyDict_SetDefault(
|
||||
PyObject *mp, PyObject *key, PyObject *defaultobj);
|
||||
|
||||
|
|
|
@ -0,0 +1,2 @@
|
|||
Restore the removed ``_PyDict_GetItemStringWithError()`` function. It is
|
||||
used by numpy. Patch by Victor Stinner.
|
|
@ -1842,6 +1842,20 @@ _PyDict_GetItemIdWithError(PyObject *dp, _Py_Identifier *key)
|
|||
return _PyDict_GetItem_KnownHash(dp, kv, hash); // borrowed reference
|
||||
}
|
||||
|
||||
PyObject *
|
||||
_PyDict_GetItemStringWithError(PyObject *v, const char *key)
|
||||
{
|
||||
PyObject *kv, *rv;
|
||||
kv = PyUnicode_FromString(key);
|
||||
if (kv == NULL) {
|
||||
return NULL;
|
||||
}
|
||||
rv = PyDict_GetItemWithError(v, kv);
|
||||
Py_DECREF(kv);
|
||||
return rv;
|
||||
}
|
||||
|
||||
|
||||
/* Fast version of global value lookup (LOAD_GLOBAL).
|
||||
* Lookup in globals, then builtins.
|
||||
*
|
||||
|
|
Loading…
Reference in New Issue