summaryrefslogtreecommitdiff
path: root/paste/httpserver.py
diff options
context:
space:
mode:
authorianb <devnull@localhost>2008-02-12 17:02:38 +0000
committerianb <devnull@localhost>2008-02-12 17:02:38 +0000
commit68763ef896234086be70c270baa8841036876d1d (patch)
tree174979df55ed7e6fb747195bcc230e8b51d41013 /paste/httpserver.py
parent8a93f497bfa2fbd48f3c740a5920d3f6d423f52d (diff)
downloadpaste-68763ef896234086be70c270baa8841036876d1d.tar.gz
Do not ignore wsgi.input readline size argument (which can lead to lots of memory used)
Diffstat (limited to 'paste/httpserver.py')
-rwxr-xr-xpaste/httpserver.py5
1 files changed, 4 insertions, 1 deletions
diff --git a/paste/httpserver.py b/paste/httpserver.py
index 32ca923..96e1753 100755
--- a/paste/httpserver.py
+++ b/paste/httpserver.py
@@ -464,7 +464,10 @@ class LimitedLengthFile(object):
return data
def readline(self, *args):
- data = self.file.readline(self.length - self._consumed)
+ max_read = self.length - self._consumed
+ if len(args):
+ max_read = min(args[0], max_read
+ data = self.file.readline(max_read)
self._consumed += len(data)
return data