Issue #4951: Fixed failure in test_httpservers
diff --git a/Lib/distutils/tests/test_util.py b/Lib/distutils/tests/test_util.py
index 29be0cf..348933e 100644
--- a/Lib/distutils/tests/test_util.py
+++ b/Lib/distutils/tests/test_util.py
@@ -29,7 +29,7 @@
         self.platform = sys.platform
         self.version = sys.version
         self.sep = os.sep
-        self.environ = os.environ
+        self.environ = dict(os.environ)
         self.join = os.path.join
         self.isabs = os.path.isabs
         self.splitdrive = os.path.splitdrive
@@ -51,7 +51,10 @@
         sys.platform = self.platform
         sys.version = self.version
         os.sep = self.sep
-        os.environ = self.environ
+        for k, v in self.environ.items():
+            os.environ[k] = v
+        for k in set(os.environ) - set(self.environ):
+            del os.environ[k]
         os.path.join = self.join
         os.path.isabs = self.isabs
         os.path.splitdrive = self.splitdrive
diff --git a/Misc/NEWS b/Misc/NEWS
index 28ddebb..125cf6e 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -246,6 +246,8 @@
 Library
 -------
 
+- Issue #4951: Fixed failure in test_httpservers.
+
 - Issue #3102:  All global symbols that the _ctypes extension defines
   are now prefixed with 'Py' or '_ctypes'.