diff --git a/pkg_resources/extern/__init__.py b/pkg_resources/extern/__init__.py
index <HASH>..<HASH> 100644
--- a/pkg_resources/extern/__init__.py
+++ b/pkg_resources/extern/__init__.py
@@ -29,7 +29,10 @@ class VendorImporter:
         for prefix in self.search_path:
             try:
                 __import__(prefix + target)
-                mod = sys.modules[fullname] = sys.modules.pop(prefix + target)
+                mod = sys.modules[prefix + target]
+                sys.modules[fullname] = mod
+                if sys.version_info > (3, 3):
+                    del sys.modules[prefix + target]
                 return mod
             except ImportError:
                 pass
Based on experimentation, the canonical module name needs to be in sys.modules on Python prior to <I>, but must be omitted on Python <I> and later.

--HG--
branch : feature/issue-<I>