diff --git a/googleapiclient/http.py b/googleapiclient/http.py
index 5caca19..e795274 100644
--- a/googleapiclient/http.py
+++ b/googleapiclient/http.py
@@ -558,9 +558,13 @@
       if mimetype is None:
         # Guess failed, use octet-stream.
         mimetype = 'application/octet-stream'
-    super(MediaFileUpload, self).__init__(fd, mimetype, chunksize=chunksize,
+    super(MediaFileUpload, self).__init__(fd, mimetype,
+                                          chunksize=chunksize,
                                           resumable=resumable)
 
+  def __del__(self):
+    self._fd.close()
+
   def to_json(self):
     """Creating a JSON representation of an instance of MediaFileUpload.
 
diff --git a/tests/test_http.py b/tests/test_http.py
index 6c2748b..edaef6d 100644
--- a/tests/test_http.py
+++ b/tests/test_http.py
@@ -31,6 +31,7 @@
 # Do not remove the httplib2 import
 import json
 import httplib2
+import io
 import logging
 import mock
 import os
@@ -209,6 +210,15 @@
 
 class TestMediaUpload(unittest.TestCase):
 
+  def test_media_file_upload_closes_fd_in___del__(self):
+    file_desc = mock.Mock(spec=io.TextIOWrapper)
+    opener = mock.mock_open(file_desc)
+    with mock.patch('__builtin__.open', return_value=opener):
+      upload = MediaFileUpload(datafile('test_close'), mimetype='text/plain')
+    self.assertIs(upload.stream(), file_desc)
+    del upload
+    file_desc.close.assert_called_once_with()
+
   def test_media_file_upload_mimetype_detection(self):
     upload = MediaFileUpload(datafile('small.png'))
     self.assertEqual('image/png', upload.mimetype())
@@ -861,7 +871,7 @@
         headers={'content-type': ''})
     request.execute()
     self.assertEqual('', http.headers.get('content-type'))
-  
+
   def test_no_retry_connection_errors(self):
     model = JsonModel()
     request = HttpRequest(
