1.1 --- a/WebStack/BaseHTTPRequestHandler.py Fri Jun 20 22:24:10 2008 +0200
1.2 +++ b/WebStack/BaseHTTPRequestHandler.py Wed Jun 16 22:27:02 2004 +0000
1.3 @@ -63,9 +63,18 @@
1.4 for morsel in self.cookies_out.values():
1.5 self.trans.send_header("Set-Cookie", morsel.OutputString())
1.6
1.7 - self.trans.end_headers()
1.8 + # Add possibly missing content length information.
1.9 + # NOTE: This is really inefficient, but we need to buffer things to
1.10 + # NOTE: permit out of order header setting.
1.11 +
1.12 self.content.seek(0)
1.13 - self.trans.wfile.write(self.content.read())
1.14 + content = self.content.read()
1.15 +
1.16 + if not self.headers_out.has_key("Content-Length"):
1.17 + self.trans.send_header("Content-Length", str(len(content)))
1.18 +
1.19 + self.trans.end_headers()
1.20 + self.trans.wfile.write(content)
1.21
1.22 # Request-related methods.
1.23