equal
deleted
inserted
replaced
426 if pycompat.ispy3: |
426 if pycompat.ispy3: |
427 uenv = {k.decode('latin1'): v for k, v in |
427 uenv = {k.decode('latin1'): v for k, v in |
428 uenv.iteritems()} |
428 uenv.iteritems()} |
429 req = requestmod.parserequestfromenv( |
429 req = requestmod.parserequestfromenv( |
430 uenv, reponame=virtualrepo, |
430 uenv, reponame=virtualrepo, |
431 altbaseurl=self.ui.config('web', 'baseurl')) |
431 altbaseurl=self.ui.config('web', 'baseurl'), |
|
432 # Reuse wrapped body file object otherwise state |
|
433 # tracking can get confused. |
|
434 bodyfh=req.bodyfh) |
432 try: |
435 try: |
433 # ensure caller gets private copy of ui |
436 # ensure caller gets private copy of ui |
434 repo = hg.repository(self.ui.copy(), real) |
437 repo = hg.repository(self.ui.copy(), real) |
435 return hgweb_mod.hgweb(repo).run_wsgi(req, res) |
438 return hgweb_mod.hgweb(repo).run_wsgi(req, res) |
436 except IOError as inst: |
439 except IOError as inst: |