From 2e7c8328ae637b3c8fbb693fdd5ffd2de01e1256 Mon Sep 17 00:00:00 2001 From: Thomas Heller Date: Tue, 11 May 2004 15:10:59 +0000 Subject: Fix SF item #876278: Unbounded recursion in modulefinder. Already backported to release23-maint. --- Lib/modulefinder.py | 4 ++++ Misc/NEWS | 2 ++ 2 files changed, 6 insertions(+) diff --git a/Lib/modulefinder.py b/Lib/modulefinder.py index ded3125..25e1482 100644 --- a/Lib/modulefinder.py +++ b/Lib/modulefinder.py @@ -245,6 +245,9 @@ class ModuleFinder: if self.badmodules.has_key(fqname): self.msgout(3, "import_module -> None") return None + if parent and parent.__path__ is None: + self.msgout(3, "import_module -> None") + return None try: fp, pathname, stuff = self.find_module(partname, parent and parent.__path__, parent) @@ -392,6 +395,7 @@ class ModuleFinder: def find_module(self, name, path, parent=None): if parent is not None: + # assert path is not None fullname = parent.__name__+'.'+name else: fullname = name diff --git a/Misc/NEWS b/Misc/NEWS index 809d2d9..f111d0e 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -306,6 +306,8 @@ Extension modules Library ------- +- Bug #876278: Unbounded recursion in modulefinder + - Bug #780300: Swap public and system ID in LexicalHandler.startDTD. Applications relying on the wrong order need to be corrected. -- cgit v0.12