Mercurial > hg
diff mercurial/i18n.py @ 28253:c407583cf5f6 stable
log: fix order of revisions filtered by multiple OR options (issue5100)
This is the simplest workaround for the issue of the ordering of revset, which
is that the expression "x or y" takes over the ordering specified by the input
set (or the left-hand-side expression.) For example, the following expression
A & (x | y)
will be evaluated as if
(A & x) | (A & y)
That's wrong because revset has ordering. I'm going to fix this problem in
the revset module, but that wouldn't fit to stable. So, this patch just works
around the common log cases.
Since this change might have some impact on performance, it is enabled only
if the expression built from log options has ' or ' operation.
author | Yuya Nishihara <yuya@tcha.org> |
---|---|
date | Mon, 15 Feb 2016 22:46:07 +0900 |
parents | 2c07c6884394 |
children | 03d1ecbbd81e |