X-Git-Url: http://dolda2000.com/gitweb/?p=wrw.git;a=blobdiff_plain;f=wrw%2Freq.py;fp=wrw%2Freq.py;h=5fbc2fe28ad65a3a88b440a374ebe0e5de20217f;hp=4b9dd7139dd6064d026bdbe2b88c8e0f6092be48;hb=af9ecd26fa64bc8f9890952f2d9e6b6147650416;hpb=54e74e803911e7fb0f861eb33b5b0d053cb7e79b diff --git a/wrw/req.py b/wrw/req.py index 4b9dd71..5fbc2fe 100644 --- a/wrw/req.py +++ b/wrw/req.py @@ -140,15 +140,20 @@ class origrequest(request): self.servername = env["SERVER_NAME"] self.https = "HTTPS" in env self.ihead = headdict() - self.input = None if "CONTENT_TYPE" in env: self.ihead["Content-Type"] = env["CONTENT_TYPE"] - if "CONTENT_LENGTH" in env: - clen = self.ihead["Content-Length"] = env["CONTENT_LENGTH"] - if clen.isdigit(): - self.input = limitreader(env["wsgi.input"], int(clen)) - if self.input is None: - self.input = io.BytesIO("") + if "CONTENT_LENGTH" in env: + clen = self.ihead["Content-Length"] = env["CONTENT_LENGTH"] + if clen.isdigit(): + self.input = limitreader(env["wsgi.input"], int(clen)) + else: + # XXX: What to do? + self.input = io.BytesIO("") + else: + # Assume input is chunked and read until ordinary EOF. + self.input = env["wsgi.input"] + else: + self.input = None self.ohead = headdict() for k, v in env.items(): if k[:5] == "HTTP_":