Merged revisions 70107 via svnmerge from

svn+ssh://pythondev@svn.python.org/python/trunk

........
  r70107 | benjamin.peterson | 2009-03-02 16:41:42 -0600 (Mon, 02 Mar 2009) | 1 line

  give httplib.IncompleteRead a more sane repr #4308
........
This commit is contained in:
Benjamin Peterson 2009-03-02 22:46:11 +00:00
parent 43c0464d84
commit a97bed9572
4 changed files with 34 additions and 2 deletions

View file

@ -616,7 +616,7 @@ class HTTPResponse:
while amt > 0:
chunk = self.fp.read(min(amt, MAXAMOUNT))
if not chunk:
raise IncompleteRead(s)
raise IncompleteRead(''.join(s), amt)
s.append(chunk)
amt -= len(chunk)
return ''.join(s)
@ -1130,9 +1130,18 @@ class UnimplementedFileMode(HTTPException):
pass
class IncompleteRead(HTTPException):
def __init__(self, partial):
def __init__(self, partial, expected=None):
self.args = partial,
self.partial = partial
self.expected = expected
def __repr__(self):
if self.expected is not None:
e = ', %i more expected' % self.expected
else:
e = ''
return 'IncompleteRead(%i bytes read%s)' % (len(self.partial), e)
def __str__(self):
return repr(self)
class ImproperConnectionState(HTTPException):
pass