From 9c0afe5dc71bb072f7aa471b572799fabda52e40 Mon Sep 17 00:00:00 2001 From: Guido van Rossum Date: Tue, 19 May 1998 15:09:05 +0000 Subject: Fix a curious bug: statements like "import sys.time" would succeed, because the path through the code would notice that sys.__path__ did not exist and it would fall back to the default path (builtins + sys.path) instead of failing). No longer. --- Python/import.c | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/Python/import.c b/Python/import.c index 6c1050f..4090118 100644 --- a/Python/import.c +++ b/Python/import.c @@ -1664,9 +1664,16 @@ import_submodule(mod, subname, fullname) struct filedescr *fdp; FILE *fp = NULL; - path = PyObject_GetAttrString(mod, "__path__"); - if (path == NULL) - PyErr_Clear(); + if (mod == Py_None) + path = NULL; + else { + path = PyObject_GetAttrString(mod, "__path__"); + if (path == NULL) { + PyErr_Clear(); + Py_INCREF(Py_None); + return Py_None; + } + } buf[0] = '\0'; fdp = find_module(subname, path, -- cgit v0.12