D2766: xdiff: resolve signed unsigned comparison warning
quark (Jun Wu)
phabricator at mercurial-scm.org
Fri Mar 9 22:54:50 UTC 2018
quark created this revision.
Herald added a subscriber: mercurial-devel.
Herald added a reviewer: hg-reviewers.
REVISION SUMMARY
Since the value won't be changed inside the code (because context lines
feature was removed by https://phab.mercurial-scm.org/D2705), let's just remove the variable and inline
the 0 value.
The code might be potentially further simplified. But I'd like to make sure
correctness is easily verifiable in this patch.
REPOSITORY
rHG Mercurial
REVISION DETAIL
https://phab.mercurial-scm.org/D2766
AFFECTED FILES
mercurial/thirdparty/xdiff/xdiffi.c
CHANGE DETAILS
diff --git a/mercurial/thirdparty/xdiff/xdiffi.c b/mercurial/thirdparty/xdiff/xdiffi.c
--- a/mercurial/thirdparty/xdiff/xdiffi.c
+++ b/mercurial/thirdparty/xdiff/xdiffi.c
@@ -1015,16 +1015,14 @@
xdchange_t *xdl_get_hunk(xdchange_t **xscr)
{
xdchange_t *xch, *xchp, *lxch;
- int64_t max_common = 0;
- int64_t max_ignorable = 0;
uint64_t ignored = 0; /* number of ignored blank lines */
/* remove ignorable changes that are too far before other changes */
for (xchp = *xscr; xchp && xchp->ignore; xchp = xchp->next) {
xch = xchp->next;
if (xch == NULL ||
- xch->i1 - (xchp->i1 + xchp->chg1) >= max_ignorable)
+ xch->i1 - (xchp->i1 + xchp->chg1) >= 0)
*xscr = xch;
}
@@ -1035,16 +1033,16 @@
for (xchp = *xscr, xch = xchp->next; xch; xchp = xch, xch = xch->next) {
int64_t distance = xch->i1 - (xchp->i1 + xchp->chg1);
- if (distance > max_common)
+ if (distance > 0)
break;
- if (distance < max_ignorable && (!xch->ignore || lxch == xchp)) {
+ if (distance < 0 && (!xch->ignore || lxch == xchp)) {
lxch = xch;
ignored = 0;
- } else if (distance < max_ignorable && xch->ignore) {
+ } else if (distance < 0 && xch->ignore) {
ignored += xch->chg2;
} else if (lxch != xchp &&
- xch->i1 + ignored - (lxch->i1 + lxch->chg1) > max_common) {
+ xch->i1 + ignored - (lxch->i1 + lxch->chg1) > 0) {
break;
} else if (!xch->ignore) {
lxch = xch;
To: quark, #hg-reviewers
Cc: mercurial-devel
More information about the Mercurial-devel
mailing list