From 29271a4100b24008719cde605a4b641745dd4678 Mon Sep 17 00:00:00 2001 From: Ronny Pfannschmidt Date: Tue, 17 Jan 2012 12:47:22 +0100 Subject: [PATCH] make Response.iter_lines yield the pending buffer if its actually a complete line --- requests/models.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/requests/models.py b/requests/models.py index c45b18a7..c3f1b432 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: