D875: hgweb: use parsebool for parsing diff query string options
indygreg (Gregory Szorc)
phabricator at mercurial-scm.org
Sun Oct 1 11:39:29 UTC 2017
indygreg created this revision.
Herald added a subscriber: mercurial-devel.
Herald added a reviewer: hg-reviewers.
REPOSITORY
rHG Mercurial
REVISION DETAIL
https://phab.mercurial-scm.org/D875
AFFECTED FILES
mercurial/hgweb/webcommands.py
mercurial/hgweb/webutil.py
CHANGE DETAILS
diff --git a/mercurial/hgweb/webutil.py b/mercurial/hgweb/webutil.py
--- a/mercurial/hgweb/webutil.py
+++ b/mercurial/hgweb/webutil.py
@@ -177,12 +177,8 @@
for k in ('ignorews', 'ignorewsamount', 'ignorewseol', 'ignoreblanklines'):
v = req.form.get(k, [None])[0]
if v is not None:
- try:
- v = bool(int(v))
- except ValueError:
- v = True
-
- setattr(diffopts, k, v)
+ v = util.parsebool(v)
+ setattr(diffopts, k, v if v is not None else True)
return diffopts
diff --git a/mercurial/hgweb/webcommands.py b/mercurial/hgweb/webcommands.py
--- a/mercurial/hgweb/webcommands.py
+++ b/mercurial/hgweb/webcommands.py
@@ -865,9 +865,10 @@
The ``ignorews``, ``ignorewsamount``, ``ignorewseol``, and
``ignoreblanklines`` query string arguments have the same meaning as
- their ``[annotate]`` config equivalents. A value of ``0`` sets the
- whitespace option to false. All other values are true. If not defined,
- the server default settings are used.
+ their ``[annotate]`` config equivalents. It uses the hgrc boolean
+ parsing logic to interpret the value. e.g. ``0`` and ``false`` are
+ false and ``1`` and ``true`` are true. If not defined, the server
+ default settings are used.
The ``fileannotate`` template is rendered.
"""
To: indygreg, #hg-reviewers
Cc: mercurial-devel
More information about the Mercurial-devel
mailing list