Mercurial > cpython-lru_cache-weakref
diff Modules/_struct.c @ 62847:f6266c459156
don't ignore exceptions from PyObject_IsTrue
| author | Benjamin Peterson <benjamin@python.org> |
|---|---|
| date | Wed, 07 Jul 2010 18:54:59 +0000 |
| parents | 7ac6148e6a7f |
| children | 2683333755f3 |
line wrap: on
line diff
--- a/Modules/_struct.c Wed Jul 07 18:51:43 2010 +0000 +++ b/Modules/_struct.c Wed Jul 07 18:54:59 2010 +0000 @@ -591,9 +591,13 @@ static int np_bool(char *p, PyObject *v, const formatdef *f) { - BOOL_TYPE y; + int y; + BOOL_TYPE x; y = PyObject_IsTrue(v); - memcpy(p, (char *)&y, sizeof y); + if (y < 0) + return -1; + x = y; + memcpy(p, (char *)&x, sizeof x); return 0; } @@ -865,6 +869,8 @@ { char y; y = PyObject_IsTrue(v); + if (y < 0) + return -1; memcpy(p, (char *)&y, sizeof y); return 0; }
