summaryrefslogtreecommitdiffstats
path: root/Lib/imputil.py
diff options
context:
space:
mode:
Diffstat (limited to 'Lib/imputil.py')
-rw-r--r--Lib/imputil.py7
1 files changed, 6 insertions, 1 deletions
diff --git a/Lib/imputil.py b/Lib/imputil.py
index 04111dc..e6ad7ec 100644
--- a/Lib/imputil.py
+++ b/Lib/imputil.py
@@ -297,7 +297,12 @@ class Importer:
# execute the code within the module's namespace
if not is_module:
- exec code in module.__dict__
+ try:
+ exec code in module.__dict__
+ except:
+ if fqname in sys.modules:
+ del sys.modules[fqname]
+ raise
# fetch from sys.modules instead of returning module directly.
# also make module's __name__ agree with fqname, in case