diff mercurial/hgweb/wsgicgi.py @ 13570:617a87cb7eb2

hgweb: add support for 100-continue as recommended by PEP 333.
author Augie Fackler <durin42@gmail.com>
date Sat, 06 Feb 2010 04:27:28 -0600
parents a1cb8ca051c0
children 659f34b833b9
line wrap: on
line diff
--- a/mercurial/hgweb/wsgicgi.py	Tue Mar 08 15:36:56 2011 -0500
+++ b/mercurial/hgweb/wsgicgi.py	Sat Feb 06 04:27:28 2010 -0600
@@ -10,6 +10,7 @@
 
 import os, sys
 from mercurial import util
+from mercurial.hgweb import common
 
 def launch(application):
     util.set_binary(sys.stdin)
@@ -23,7 +24,11 @@
         if environ['PATH_INFO'].startswith(scriptname):
             environ['PATH_INFO'] = environ['PATH_INFO'][len(scriptname):]
 
-    environ['wsgi.input'] = sys.stdin
+    stdin = sys.stdin
+    if environ.get('HTTP_EXPECT', '').lower() == '100-continue':
+        stdin = common.continuereader(stdin, sys.stdout.write)
+
+    environ['wsgi.input'] = stdin
     environ['wsgi.errors'] = sys.stderr
     environ['wsgi.version'] = (1, 0)
     environ['wsgi.multithread'] = False