diff options
author | Stefan Krah <skrah@bytereef.org> | 2019-03-25 20:50:58 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-03-25 20:50:58 (GMT) |
commit | 027b09c5a13aac9e14a3b43bb385298d549c3833 (patch) | |
tree | 44c35e9ec4e1ae42dde580a0ea369e5a1c32de1a /Python/ceval.c | |
parent | d1e768a67707bf7bb426c1537e1a764e89eaff78 (diff) | |
download | cpython-027b09c5a13aac9e14a3b43bb385298d549c3833.zip cpython-027b09c5a13aac9e14a3b43bb385298d549c3833.tar.gz cpython-027b09c5a13aac9e14a3b43bb385298d549c3833.tar.bz2 |
bpo-36370: Check for PyErr_Occurred() after PyImport_GetModule() (GH-12504)
Diffstat (limited to 'Python/ceval.c')
-rw-r--r-- | Python/ceval.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/Python/ceval.c b/Python/ceval.c index 40320bf..28e9232 100644 --- a/Python/ceval.c +++ b/Python/ceval.c @@ -4948,7 +4948,7 @@ import_from(PyObject *v, PyObject *name) } x = PyImport_GetModule(fullmodname); Py_DECREF(fullmodname); - if (x == NULL) { + if (x == NULL && !PyErr_Occurred()) { goto error; } Py_DECREF(pkgname); @@ -4971,7 +4971,7 @@ import_from(PyObject *v, PyObject *name) "cannot import name %R from %R (unknown location)", name, pkgname_or_unknown ); - /* NULL check for errmsg done by PyErr_SetImportError. */ + /* NULL checks for errmsg and pkgname done by PyErr_SetImportError. */ PyErr_SetImportError(errmsg, pkgname, NULL); } else { @@ -4979,7 +4979,7 @@ import_from(PyObject *v, PyObject *name) "cannot import name %R from %R (%S)", name, pkgname_or_unknown, pkgpath ); - /* NULL check for errmsg done by PyErr_SetImportError. */ + /* NULL checks for errmsg and pkgname done by PyErr_SetImportError. */ PyErr_SetImportError(errmsg, pkgname, pkgpath); } |