[PATCH] httpclient: Import f4c380237fd5 to fix keepalive not working
Augie Fackler
durin42 at gmail.com
Wed May 11 08:02:24 CDT 2011
# HG changeset patch
# User Augie Fackler <durin42 at gmail.com>
# Date 1305118848 18000
# Node ID b2d9568cc3292668bfad9bde1119bfa638059e36
# Parent 34ec9b313638b8930cec1dc77149893b5b892895
httpclient: Import f4c380237fd5 to fix keepalive not working.
diff --git a/mercurial/httpclient/__init__.py b/mercurial/httpclient/__init__.py
--- a/mercurial/httpclient/__init__.py
+++ b/mercurial/httpclient/__init__.py
@@ -629,9 +629,11 @@
r = self._current_response
while r.headers is None:
r._select()
- if r.complete() or r.will_close:
+ if r.will_close:
self.sock = None
self._current_response = None
+ elif r.complete():
+ self._current_response = None
else:
self._current_response_taken = True
return r
diff --git a/mercurial/httpclient/tests/simple_http_test.py b/mercurial/httpclient/tests/simple_http_test.py
--- a/mercurial/httpclient/tests/simple_http_test.py
+++ b/mercurial/httpclient/tests/simple_http_test.py
@@ -116,6 +116,9 @@
self.assertEqual('1234567890', resp.read())
self.assertEqual(['Value\n Rest of value'],
resp.headers.getheaders('multiline'))
+ # Socket should not be closed
+ self.assertEqual(resp.sock.closed, False)
+ self.assertEqual(con.sock.closed, False)
def testSimpleRequest(self):
con = http.HTTPConnection('1.2.3.4:80')
More information about the Mercurial-devel
mailing list