--- a/mercurial/hgweb/hgweb_mod.py Wed Jun 25 12:53:57 2008 -0700
+++ b/mercurial/hgweb/hgweb_mod.py Thu Jun 26 13:45:39 2008 +0200
@@ -16,21 +16,6 @@
from request import wsgirequest
import webcommands, protocol, webutil
-shortcuts = {
- 'cl': [('cmd', ['changelog']), ('rev', None)],
- 'sl': [('cmd', ['shortlog']), ('rev', None)],
- 'cs': [('cmd', ['changeset']), ('node', None)],
- 'f': [('cmd', ['file']), ('filenode', None)],
- 'fl': [('cmd', ['filelog']), ('filenode', None)],
- 'fd': [('cmd', ['filediff']), ('node', None)],
- 'fa': [('cmd', ['annotate']), ('filenode', None)],
- 'mf': [('cmd', ['manifest']), ('manifest', None)],
- 'ca': [('cmd', ['archive']), ('node', None)],
- 'tags': [('cmd', ['tags'])],
- 'tip': [('cmd', ['changeset']), ('node', ['tip'])],
- 'static': [('cmd', ['static']), ('file', None)]
-}
-
class hgweb(object):
def __init__(self, repo, name=None):
if isinstance(repo, str):
@@ -104,16 +89,6 @@
self.refresh()
- # expand form shortcuts
-
- for k in shortcuts.iterkeys():
- if k in req.form:
- for name, value in shortcuts[k]:
- if value is None:
- value = req.form[k]
- req.form[name] = value
- del req.form[k]
-
# work with CGI variables to create coherent structure
# use SCRIPT_NAME, PATH_INFO and QUERY_STRING as well as our REPO_NAME
--- a/mercurial/hgweb/request.py Wed Jun 25 12:53:57 2008 -0700
+++ b/mercurial/hgweb/request.py Thu Jun 26 13:45:39 2008 +0200
@@ -9,6 +9,31 @@
import socket, cgi, errno
from common import ErrorResponse, statusmessage
+shortcuts = {
+ 'cl': [('cmd', ['changelog']), ('rev', None)],
+ 'sl': [('cmd', ['shortlog']), ('rev', None)],
+ 'cs': [('cmd', ['changeset']), ('node', None)],
+ 'f': [('cmd', ['file']), ('filenode', None)],
+ 'fl': [('cmd', ['filelog']), ('filenode', None)],
+ 'fd': [('cmd', ['filediff']), ('node', None)],
+ 'fa': [('cmd', ['annotate']), ('filenode', None)],
+ 'mf': [('cmd', ['manifest']), ('manifest', None)],
+ 'ca': [('cmd', ['archive']), ('node', None)],
+ 'tags': [('cmd', ['tags'])],
+ 'tip': [('cmd', ['changeset']), ('node', ['tip'])],
+ 'static': [('cmd', ['static']), ('file', None)]
+}
+
+def expand(form):
+ for k in shortcuts.iterkeys():
+ if k in form:
+ for name, value in shortcuts[k]:
+ if value is None:
+ value = form[k]
+ form[name] = value
+ del form[k]
+ return form
+
class wsgirequest(object):
def __init__(self, wsgienv, start_response):
version = wsgienv['wsgi.version']
@@ -21,7 +46,7 @@
self.multiprocess = wsgienv['wsgi.multiprocess']
self.run_once = wsgienv['wsgi.run_once']
self.env = wsgienv
- self.form = cgi.parse(self.inp, self.env, keep_blank_values=1)
+ self.form = expand(cgi.parse(self.inp, self.env, keep_blank_values=1))
self._start_response = start_response
self.server_write = None
self.headers = []