diff options
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 40320bf357..28e923219d 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);      }  | 
