diff --git a/Lib/gzip.py b/Lib/gzip.py
index eeef3f8..7a3f813 100644
--- a/Lib/gzip.py
+++ b/Lib/gzip.py
@@ -306,6 +306,8 @@
             raise IOError, "Incorrect length of data produced"
 
     def close(self):
+        if self.fileobj is None:
+            return
         if self.mode == WRITE:
             self.fileobj.write(self.compress.flush())
             write32u(self.fileobj, self.crc)
diff --git a/Lib/test/test_gzip.py b/Lib/test/test_gzip.py
index a1a267e..105882a 100644
--- a/Lib/test/test_gzip.py
+++ b/Lib/test/test_gzip.py
@@ -24,14 +24,14 @@
 class TestGzip(unittest.TestCase):
     filename = test_support.TESTFN
 
-    def setUp (self):
+    def setUp(self):
         test_support.unlink(self.filename)
 
-    def tearDown (self):
+    def tearDown(self):
         test_support.unlink(self.filename)
 
 
-    def test_write (self):
+    def test_write(self):
         f = gzip.GzipFile(self.filename, 'wb') ; f.write(data1 * 50)
 
         # Try flush and fileno.
@@ -41,6 +41,9 @@
             os.fsync(f.fileno())
         f.close()
 
+        # Test multiple close() calls.
+        f.close()
+
     def test_read(self):
         self.test_write()
         # Try reading.
diff --git a/Misc/NEWS b/Misc/NEWS
index 6b40164..732cfa7 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -59,6 +59,10 @@
 Library
 -------
 
+- Issue #2959: For consistency with other file-like objects, gzip's
+  GzipFile.close() can now be called multiple times without raising
+  an exception.
+
 - Issue #1390: Raise ValueError in toxml when an invalid comment would
   otherwise be produced.
 
