Merge with crew-stable
authorPatrick Mezard <pmezard@gmail.com>
Sun, 03 Jan 2010 18:16:42 +0100
changeset 10202 dcaa80294c79
parent 10200 3373ecddadba (current diff)
parent 10201 d2847c4523e8 (diff)
child 10204 3ca8f2ae5fee
Merge with crew-stable
--- a/mercurial/hgweb/wsgicgi.py	Sat Jan 02 18:14:45 2010 +0100
+++ b/mercurial/hgweb/wsgicgi.py	Sun Jan 03 18:16:42 2010 +0100
@@ -17,8 +17,11 @@
 
     environ = dict(os.environ.iteritems())
     environ.setdefault('PATH_INFO', '')
-    if '.cgi' in environ['PATH_INFO']:
-        environ['PATH_INFO'] = environ['PATH_INFO'].split('.cgi', 1)[1]
+    if environ.get('SERVER_SOFTWARE', '').startswith('Microsoft-IIS'):
+        # IIS includes script_name in path_info
+        scriptname = environ['SCRIPT_NAME']
+        if environ['PATH_INFO'].startswith(scriptname):
+            environ['PATH_INFO'] = environ['PATH_INFO'][len(scriptname):]
 
     environ['wsgi.input'] = sys.stdin
     environ['wsgi.errors'] = sys.stderr