mercurial/hgweb/hgwebdir_mod.py
changeset 36911 f0a851542a05
parent 36908 cd6ae9ab7bd8
child 36920 6ff6e1d6b5b8
--- a/mercurial/hgweb/hgwebdir_mod.py	Sat Mar 10 15:24:24 2018 +0530
+++ b/mercurial/hgweb/hgwebdir_mod.py	Sun Mar 11 16:29:54 2018 -0700
@@ -348,19 +348,18 @@
 
     def __call__(self, env, respond):
         baseurl = self.ui.config('web', 'baseurl')
-        wsgireq = requestmod.wsgirequest(env, respond, altbaseurl=baseurl)
-        return self.run_wsgi(wsgireq)
+        req = requestmod.parserequestfromenv(env, altbaseurl=baseurl)
+        res = requestmod.wsgiresponse(req, respond)
 
-    def run_wsgi(self, wsgireq):
+        return self.run_wsgi(req, res)
+
+    def run_wsgi(self, req, res):
         profile = self.ui.configbool('profiling', 'enabled')
         with profiling.profile(self.ui, enabled=profile):
-            for r in self._runwsgi(wsgireq):
+            for r in self._runwsgi(req, res):
                 yield r
 
-    def _runwsgi(self, wsgireq):
-        req = wsgireq.req
-        res = wsgireq.res
-
+    def _runwsgi(self, req, res):
         try:
             self.refresh()
 
@@ -423,13 +422,13 @@
                 if real:
                     # Re-parse the WSGI environment to take into account our
                     # repository path component.
-                    wsgireq.req = requestmod.parserequestfromenv(
-                        wsgireq.env, wsgireq.req.bodyfh, reponame=virtualrepo,
+                    req = requestmod.parserequestfromenv(
+                        req.rawenv, reponame=virtualrepo,
                         altbaseurl=self.ui.config('web', 'baseurl'))
                     try:
                         # ensure caller gets private copy of ui
                         repo = hg.repository(self.ui.copy(), real)
-                        return hgweb_mod.hgweb(repo).run_wsgi(wsgireq)
+                        return hgweb_mod.hgweb(repo).run_wsgi(req, res)
                     except IOError as inst:
                         msg = encoding.strtolocal(inst.strerror)
                         raise ErrorResponse(HTTP_SERVER_ERROR, msg)