summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Python/import.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/Python/import.c b/Python/import.c
index f62d1d2..ab08be5 100644
--- a/Python/import.c
+++ b/Python/import.c
@@ -287,12 +287,14 @@ doneimport()
/* Explicitly erase all modules; this is the safest way
to get rid of at least *some* circular dependencies */
for (i = getdictsize(modules); --i >= 0; ) {
- char *k;
- k = getdictkey(modules, i);
+ object *k;
+ k = getdict2key(modules, i);
if (k != NULL) {
object *m;
- m = dictlookup(modules, k);
- if (m != NULL && is_moduleobject(m)) {
+ m = dict2lookup(modules, k);
+ if (m == NULL)
+ err_clear();
+ else if (is_moduleobject(m)) {
object *d;
d = getmoduledict(m);
if (d != NULL && is_dictobject(d)) {