From: Brett Cannon Date: Thu, 23 Feb 2012 23:18:48 +0000 (-0500) Subject: Do a type check instead of an interface check. X-Git-Tag: v3.3.0a1~83 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=068915cc8b75720192be0e5834e7e25993fae5ff;p=python Do a type check instead of an interface check. --- diff --git a/Lib/importlib/_bootstrap.py b/Lib/importlib/_bootstrap.py index 6c4367fde9..6382079c19 100644 --- a/Lib/importlib/_bootstrap.py +++ b/Lib/importlib/_bootstrap.py @@ -920,12 +920,12 @@ def _find_module(name, path): def _sanity_check(name, package, level): """Verify arguments are "sane".""" - if not hasattr(name, 'rpartition'): + if not isinstance(name, str): raise TypeError("module name must be str, not {}".format(type(name))) if level < 0: raise ValueError('level must be >= 0') if package: - if not hasattr(package, 'rindex'): + if not isinstance(package, str): raise ValueError("__package__ not set to a string") elif package not in sys.modules: msg = ("Parent module {0!r} not loaded, cannot perform relative "