mirror of
https://github.com/python/cpython.git
synced 2025-10-03 13:45:29 +00:00
Fix SF item #876278: Unbounded recursion in modulefinder.
Already backported to release23-maint.
This commit is contained in:
parent
112f8f4f81
commit
2e7c8328ae
2 changed files with 6 additions and 0 deletions
|
@ -245,6 +245,9 @@ class ModuleFinder:
|
||||||
if self.badmodules.has_key(fqname):
|
if self.badmodules.has_key(fqname):
|
||||||
self.msgout(3, "import_module -> None")
|
self.msgout(3, "import_module -> None")
|
||||||
return None
|
return None
|
||||||
|
if parent and parent.__path__ is None:
|
||||||
|
self.msgout(3, "import_module -> None")
|
||||||
|
return None
|
||||||
try:
|
try:
|
||||||
fp, pathname, stuff = self.find_module(partname,
|
fp, pathname, stuff = self.find_module(partname,
|
||||||
parent and parent.__path__, parent)
|
parent and parent.__path__, parent)
|
||||||
|
@ -392,6 +395,7 @@ class ModuleFinder:
|
||||||
|
|
||||||
def find_module(self, name, path, parent=None):
|
def find_module(self, name, path, parent=None):
|
||||||
if parent is not None:
|
if parent is not None:
|
||||||
|
# assert path is not None
|
||||||
fullname = parent.__name__+'.'+name
|
fullname = parent.__name__+'.'+name
|
||||||
else:
|
else:
|
||||||
fullname = name
|
fullname = name
|
||||||
|
|
|
@ -306,6 +306,8 @@ Extension modules
|
||||||
Library
|
Library
|
||||||
-------
|
-------
|
||||||
|
|
||||||
|
- Bug #876278: Unbounded recursion in modulefinder
|
||||||
|
|
||||||
- Bug #780300: Swap public and system ID in LexicalHandler.startDTD.
|
- Bug #780300: Swap public and system ID in LexicalHandler.startDTD.
|
||||||
Applications relying on the wrong order need to be corrected.
|
Applications relying on the wrong order need to be corrected.
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue