equal
deleted
inserted
replaced
420 for virtualrepo in _virtualdirs(): |
420 for virtualrepo in _virtualdirs(): |
421 real = repos.get(virtualrepo) |
421 real = repos.get(virtualrepo) |
422 if real: |
422 if real: |
423 # Re-parse the WSGI environment to take into account our |
423 # Re-parse the WSGI environment to take into account our |
424 # repository path component. |
424 # repository path component. |
|
425 uenv = req.rawenv |
|
426 if pycompat.ispy3: |
|
427 uenv = {k.decode('latin1'): v for k, v in |
|
428 uenv.iteritems()} |
425 req = requestmod.parserequestfromenv( |
429 req = requestmod.parserequestfromenv( |
426 req.rawenv, reponame=virtualrepo, |
430 uenv, reponame=virtualrepo, |
427 altbaseurl=self.ui.config('web', 'baseurl')) |
431 altbaseurl=self.ui.config('web', 'baseurl')) |
428 try: |
432 try: |
429 # ensure caller gets private copy of ui |
433 # ensure caller gets private copy of ui |
430 repo = hg.repository(self.ui.copy(), real) |
434 repo = hg.repository(self.ui.copy(), real) |
431 return hgweb_mod.hgweb(repo).run_wsgi(req, res) |
435 return hgweb_mod.hgweb(repo).run_wsgi(req, res) |