]> granicus.if.org Git - python/commitdiff
HTTPResponse should not inherit from io.IOBase.
authorJeremy Hylton <jeremy@alum.mit.edu>
Sat, 4 Aug 2007 02:34:24 +0000 (02:34 +0000)
committerJeremy Hylton <jeremy@alum.mit.edu>
Sat, 4 Aug 2007 02:34:24 +0000 (02:34 +0000)
I'm not sure why I thought it should originally, but it introduces an
__del__() method on the response which cause the close() to be called
too soon using the HTTP compat class.

Also, remove some stale comments.  The HTTPResponse calls makefile()
immediately, so there is no risk of it closing the socket.

Lib/httplib.py

index 2f9a5c3cdd2c567c3a9ca9f9257feeb368cc430e..020d5c590744ab5b5d67902b6d6502e0d15d1c90 100644 (file)
@@ -308,7 +308,7 @@ class HTTPMessage(mimetools.Message):
                     self.status = self.status + '; bad seek'
                 break
 
-class HTTPResponse(io.IOBase):
+class HTTPResponse:
 
     # strict: If true, raise BadStatusLine if the status line can't be
     # parsed as a valid HTTP/1.0 or 1.1 status line.  By default it is
@@ -1205,10 +1205,6 @@ class HTTP:
         try:
             response = self._conn.getresponse()
         except BadStatusLine as e:
-            ### hmm. if getresponse() ever closes the socket on a bad request,
-            ### then we are going to have problems with self.sock
-
-            ### should we keep this behavior? do people use it?
             # keep the socket open (as a file), and return it
             self.file = self._conn.sock.makefile('rb', 0)
 
@@ -1399,7 +1395,7 @@ def test():
     status, reason, headers = h.getreply()
     print('status =', status)
     print('reason =', reason)
-    print("read", len(h.getfile().read()))
+    print('read', len(h.getfile().read()))
     print()
     if headers:
         for header in headers.headers: print(header.strip())