diff options
| author | Serhiy Storchaka <storchaka@gmail.com> | 2016-04-10 12:26:52 (GMT) |
|---|---|---|
| committer | Serhiy Storchaka <storchaka@gmail.com> | 2016-04-10 12:26:52 (GMT) |
| commit | 149d080871f9bef276a3d4fa251ba6fbc910f770 (patch) | |
| tree | a798ef6ce506f98339307b244450fe1a48c70866 /Objects/unicodeobject.c | |
| parent | f1669a390d262bf138cd8dc954443fb0e3c8c85e (diff) | |
| download | cpython-149d080871f9bef276a3d4fa251ba6fbc910f770.zip cpython-149d080871f9bef276a3d4fa251ba6fbc910f770.tar.gz cpython-149d080871f9bef276a3d4fa251ba6fbc910f770.tar.bz2 | |
Issue #13410: Fixed a bug in PyUnicode_Format where it failed to properly
ignore errors from a __int__() method.
Patch based on the patch for issue #15516.
Diffstat (limited to 'Objects/unicodeobject.c')
| -rw-r--r-- | Objects/unicodeobject.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/Objects/unicodeobject.c b/Objects/unicodeobject.c index 454451e..d06ce2c 100644 --- a/Objects/unicodeobject.c +++ b/Objects/unicodeobject.c @@ -8632,7 +8632,10 @@ PyObject *PyUnicode_Format(PyObject *format, } else { iobj = PyNumber_Int(v); - if (iobj==NULL) iobj = PyNumber_Long(v); + if (iobj==NULL) { + PyErr_Clear(); + iobj = PyNumber_Long(v); + } } if (iobj!=NULL) { if (PyInt_Check(iobj)) { |
