From: Ronny Pfannschmidt Date: Tue, 17 Jan 2012 11:47:22 +0000 (+0100) Subject: make Response.iter_lines yield the pending buffer if its actually a complete line X-Git-Tag: v0.9.2~2^2~4 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=29271a4100b24008719cde605a4b641745dd4678;p=services%2Fpython-requests.git make Response.iter_lines yield the pending buffer if its actually a complete line --- diff --git a/requests/models.py b/requests/models.py index c45b18a..c3f1b43 100644 --- a/requests/models.py +++ b/requests/models.py @@ -633,7 +633,7 @@ class Response(object): avoids reading the content at once into memory for large responses. """ - + #XXX: why rstrip by default pending = None for chunk in self.iter_content(chunk_size, decode_unicode=decode_unicode): if pending is not None: @@ -643,6 +643,10 @@ class Response(object): yield line.rstrip() # Save the last part of the chunk for next iteration, to keep full line together pending = lines[-1] + #if pending is a complete line, give it baack + if pending[-1] == '\n': + yield pending.rstrip() + pending = None # Yield the last line if pending is not None: