diff options
Diffstat (limited to 'django/utils/module_loading.py')
-rw-r--r-- | django/utils/module_loading.py | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/django/utils/module_loading.py b/django/utils/module_loading.py index f251035387..32ca69a9fd 100644 --- a/django/utils/module_loading.py +++ b/django/utils/module_loading.py @@ -6,8 +6,11 @@ import sys def module_has_submodule(package, module_name): """See if 'module' is in 'package'.""" name = ".".join([package.__name__, module_name]) - if name in sys.modules: - return True + try: + # None indicates a cached miss; see mark_miss() in Python/import.c. + return sys.modules[name] is not None + except KeyError: + pass for finder in sys.meta_path: if finder.find_module(name): return True |