Mercurial > cpython-lru_cache-weakref
diff Objects/unicodeobject.c @ 82938:391e3a7db1a3 2.7
allow any type with __getitem__ to be a mapping for the purposes of % (#15801)
| author | Benjamin Peterson <benjamin@python.org> |
|---|---|
| date | Sat, 23 Mar 2013 22:32:00 -0500 |
| parents | 498b54e0e856 |
| children | 2f1e8b7fa534 |
line wrap: on
line diff
--- a/Objects/unicodeobject.c Sat Mar 23 16:35:45 2013 -0500 +++ b/Objects/unicodeobject.c Sat Mar 23 22:32:00 2013 -0500 @@ -8287,8 +8287,8 @@ arglen = -1; argidx = -2; } - if (PyMapping_Check(args) && !PyTuple_Check(args) && - !PyObject_TypeCheck(args, &PyBaseString_Type)) + if (Py_TYPE(args)->tp_as_mapping && Py_TYPE(args)->tp_as_mapping->mp_subscript && + !PyTuple_Check(args) && !PyObject_TypeCheck(args, &PyBaseString_Type)) dict = args; while (--fmtcnt >= 0) {
