Mercurial > public > mercurial-scm > hg-stable
diff mercurial/revset.py @ 31998:83527d9f1f13
revset: properly parse "descend" argument of followlines()
We parse "descend" symbol as a Boolean using getboolean (prior extraction by
getargsdict already checked that it is a symbol).
In tests, check for error cases and vary Boolean values here and there.
author | Denis Laxalde <denis@laxalde.org> |
---|---|
date | Sat, 15 Apr 2017 11:29:42 +0200 |
parents | 5e3b49defbff |
children | 2a2744dffecf |
line wrap: on
line diff
--- a/mercurial/revset.py Sat Apr 15 11:26:09 2017 +0200 +++ b/mercurial/revset.py Sat Apr 15 11:29:42 2017 +0200 @@ -32,6 +32,7 @@ getsymbol = revsetlang.getsymbol getstring = revsetlang.getstring getinteger = revsetlang.getinteger +getboolean = revsetlang.getboolean getlist = revsetlang.getlist getrange = revsetlang.getrange getargs = revsetlang.getargs @@ -944,7 +945,11 @@ fromline, toline = util.processlinerange(fromline, toline) fctx = repo[rev].filectx(fname) - if args.get('descend', False): + descend = False + if 'descend' in args: + descend = getboolean(args['descend'], + _("'descend' argument must be a boolean")) + if descend: rs = generatorset( (c.rev() for c, _linerange in context.blockdescendants(fctx, fromline, toline)),