mirror of
https://github.com/git/git.git
synced 2026-01-12 05:43:12 +09:00
xdiff: rename rchg -> changed in xdfile_t
The field rchg (now 'changed') declares if a line in a file is changed or not. A later commit will change it's type from 'char' to 'bool' to make its purpose even more clear. Best-viewed-with: --color-words Signed-off-by: Ezekiel Newren <ezekielnewren@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
d43d591252
commit
b7de64a6d6
@ -278,10 +278,10 @@ int xdl_recs_cmp(xdfile_t *xdf1, long off1, long lim1,
|
||||
*/
|
||||
if (off1 == lim1) {
|
||||
for (; off2 < lim2; off2++)
|
||||
xdf2->rchg[xdf2->rindex[off2]] = 1;
|
||||
xdf2->changed[xdf2->rindex[off2]] = 1;
|
||||
} else if (off2 == lim2) {
|
||||
for (; off1 < lim1; off1++)
|
||||
xdf1->rchg[xdf1->rindex[off1]] = 1;
|
||||
xdf1->changed[xdf1->rindex[off1]] = 1;
|
||||
} else {
|
||||
xdpsplit_t spl;
|
||||
spl.i1 = spl.i2 = 0;
|
||||
@ -708,7 +708,7 @@ struct xdlgroup {
|
||||
static void group_init(xdfile_t *xdf, struct xdlgroup *g)
|
||||
{
|
||||
g->start = g->end = 0;
|
||||
while (xdf->rchg[g->end])
|
||||
while (xdf->changed[g->end])
|
||||
g->end++;
|
||||
}
|
||||
|
||||
@ -722,7 +722,7 @@ static inline int group_next(xdfile_t *xdf, struct xdlgroup *g)
|
||||
return -1;
|
||||
|
||||
g->start = g->end + 1;
|
||||
for (g->end = g->start; xdf->rchg[g->end]; g->end++)
|
||||
for (g->end = g->start; xdf->changed[g->end]; g->end++)
|
||||
;
|
||||
|
||||
return 0;
|
||||
@ -738,7 +738,7 @@ static inline int group_previous(xdfile_t *xdf, struct xdlgroup *g)
|
||||
return -1;
|
||||
|
||||
g->end = g->start - 1;
|
||||
for (g->start = g->end; xdf->rchg[g->start - 1]; g->start--)
|
||||
for (g->start = g->end; xdf->changed[g->start - 1]; g->start--)
|
||||
;
|
||||
|
||||
return 0;
|
||||
@ -753,10 +753,10 @@ static int group_slide_down(xdfile_t *xdf, struct xdlgroup *g)
|
||||
{
|
||||
if (g->end < xdf->nrec &&
|
||||
recs_match(&xdf->recs[g->start], &xdf->recs[g->end])) {
|
||||
xdf->rchg[g->start++] = 0;
|
||||
xdf->rchg[g->end++] = 1;
|
||||
xdf->changed[g->start++] = 0;
|
||||
xdf->changed[g->end++] = 1;
|
||||
|
||||
while (xdf->rchg[g->end])
|
||||
while (xdf->changed[g->end])
|
||||
g->end++;
|
||||
|
||||
return 0;
|
||||
@ -774,10 +774,10 @@ static int group_slide_up(xdfile_t *xdf, struct xdlgroup *g)
|
||||
{
|
||||
if (g->start > 0 &&
|
||||
recs_match(&xdf->recs[g->start - 1], &xdf->recs[g->end - 1])) {
|
||||
xdf->rchg[--g->start] = 1;
|
||||
xdf->rchg[--g->end] = 0;
|
||||
xdf->changed[--g->start] = 1;
|
||||
xdf->changed[--g->end] = 0;
|
||||
|
||||
while (xdf->rchg[g->start - 1])
|
||||
while (xdf->changed[g->start - 1])
|
||||
g->start--;
|
||||
|
||||
return 0;
|
||||
@ -932,16 +932,16 @@ int xdl_change_compact(xdfile_t *xdf, xdfile_t *xdfo, long flags) {
|
||||
|
||||
int xdl_build_script(xdfenv_t *xe, xdchange_t **xscr) {
|
||||
xdchange_t *cscr = NULL, *xch;
|
||||
char *rchg1 = xe->xdf1.rchg, *rchg2 = xe->xdf2.rchg;
|
||||
char *changed1 = xe->xdf1.changed, *changed2 = xe->xdf2.changed;
|
||||
long i1, i2, l1, l2;
|
||||
|
||||
/*
|
||||
* Trivial. Collects "groups" of changes and creates an edit script.
|
||||
*/
|
||||
for (i1 = xe->xdf1.nrec, i2 = xe->xdf2.nrec; i1 >= 0 || i2 >= 0; i1--, i2--)
|
||||
if (rchg1[i1 - 1] || rchg2[i2 - 1]) {
|
||||
for (l1 = i1; rchg1[i1 - 1]; i1--);
|
||||
for (l2 = i2; rchg2[i2 - 1]; i2--);
|
||||
if (changed1[i1 - 1] || changed2[i2 - 1]) {
|
||||
for (l1 = i1; changed1[i1 - 1]; i1--);
|
||||
for (l2 = i2; changed2[i2 - 1]; i2--);
|
||||
|
||||
if (!(xch = xdl_add_change(cscr, i1, i2, l1 - i1, l2 - i2))) {
|
||||
xdl_free_script(cscr);
|
||||
|
||||
@ -318,11 +318,11 @@ redo:
|
||||
|
||||
if (!count1) {
|
||||
while(count2--)
|
||||
env->xdf2.rchg[line2++ - 1] = 1;
|
||||
env->xdf2.changed[line2++ - 1] = 1;
|
||||
return 0;
|
||||
} else if (!count2) {
|
||||
while(count1--)
|
||||
env->xdf1.rchg[line1++ - 1] = 1;
|
||||
env->xdf1.changed[line1++ - 1] = 1;
|
||||
return 0;
|
||||
}
|
||||
|
||||
@ -335,9 +335,9 @@ redo:
|
||||
else {
|
||||
if (lcs.begin1 == 0 && lcs.begin2 == 0) {
|
||||
while (count1--)
|
||||
env->xdf1.rchg[line1++ - 1] = 1;
|
||||
env->xdf1.changed[line1++ - 1] = 1;
|
||||
while (count2--)
|
||||
env->xdf2.rchg[line2++ - 1] = 1;
|
||||
env->xdf2.changed[line2++ - 1] = 1;
|
||||
result = 0;
|
||||
} else {
|
||||
result = histogram_diff(xpp, env,
|
||||
|
||||
@ -331,11 +331,11 @@ static int patience_diff(xpparam_t const *xpp, xdfenv_t *env,
|
||||
/* trivial case: one side is empty */
|
||||
if (!count1) {
|
||||
while(count2--)
|
||||
env->xdf2.rchg[line2++ - 1] = 1;
|
||||
env->xdf2.changed[line2++ - 1] = 1;
|
||||
return 0;
|
||||
} else if (!count2) {
|
||||
while(count1--)
|
||||
env->xdf1.rchg[line1++ - 1] = 1;
|
||||
env->xdf1.changed[line1++ - 1] = 1;
|
||||
return 0;
|
||||
}
|
||||
|
||||
@ -347,9 +347,9 @@ static int patience_diff(xpparam_t const *xpp, xdfenv_t *env,
|
||||
/* are there any matching lines at all? */
|
||||
if (!map.has_matches) {
|
||||
while(count1--)
|
||||
env->xdf1.rchg[line1++ - 1] = 1;
|
||||
env->xdf1.changed[line1++ - 1] = 1;
|
||||
while(count2--)
|
||||
env->xdf2.rchg[line2++ - 1] = 1;
|
||||
env->xdf2.changed[line2++ - 1] = 1;
|
||||
xdl_free(map.entries);
|
||||
return 0;
|
||||
}
|
||||
|
||||
@ -126,7 +126,7 @@ static int xdl_classify_record(unsigned int pass, xdlclassifier_t *cf, xrecord_t
|
||||
static void xdl_free_ctx(xdfile_t *xdf)
|
||||
{
|
||||
xdl_free(xdf->rindex);
|
||||
xdl_free(xdf->rchg - 1);
|
||||
xdl_free(xdf->changed - 1);
|
||||
xdl_free(xdf->recs);
|
||||
}
|
||||
|
||||
@ -139,7 +139,7 @@ static int xdl_prepare_ctx(unsigned int pass, mmfile_t *mf, long narec, xpparam_
|
||||
xrecord_t *crec;
|
||||
|
||||
xdf->rindex = NULL;
|
||||
xdf->rchg = NULL;
|
||||
xdf->changed = NULL;
|
||||
xdf->recs = NULL;
|
||||
|
||||
if (!XDL_ALLOC_ARRAY(xdf->recs, narec))
|
||||
@ -161,7 +161,7 @@ static int xdl_prepare_ctx(unsigned int pass, mmfile_t *mf, long narec, xpparam_
|
||||
}
|
||||
}
|
||||
|
||||
if (!XDL_CALLOC_ARRAY(xdf->rchg, xdf->nrec + 2))
|
||||
if (!XDL_CALLOC_ARRAY(xdf->changed, xdf->nrec + 2))
|
||||
goto abort;
|
||||
|
||||
if ((XDF_DIFF_ALG(xpp->flags) != XDF_PATIENCE_DIFF) &&
|
||||
@ -170,7 +170,7 @@ static int xdl_prepare_ctx(unsigned int pass, mmfile_t *mf, long narec, xpparam_
|
||||
goto abort;
|
||||
}
|
||||
|
||||
xdf->rchg += 1;
|
||||
xdf->changed += 1;
|
||||
xdf->nreff = 0;
|
||||
xdf->dstart = 0;
|
||||
xdf->dend = xdf->nrec - 1;
|
||||
@ -287,7 +287,7 @@ static int xdl_cleanup_records(xdlclassifier_t *cf, xdfile_t *xdf1, xdfile_t *xd
|
||||
(dis1[i] == 2 && !xdl_clean_mmatch(dis1, i, xdf1->dstart, xdf1->dend))) {
|
||||
xdf1->rindex[nreff++] = i;
|
||||
} else
|
||||
xdf1->rchg[i] = 1;
|
||||
xdf1->changed[i] = 1;
|
||||
}
|
||||
xdf1->nreff = nreff;
|
||||
|
||||
@ -297,7 +297,7 @@ static int xdl_cleanup_records(xdlclassifier_t *cf, xdfile_t *xdf1, xdfile_t *xd
|
||||
(dis2[i] == 2 && !xdl_clean_mmatch(dis2, i, xdf2->dstart, xdf2->dend))) {
|
||||
xdf2->rindex[nreff++] = i;
|
||||
} else
|
||||
xdf2->rchg[i] = 1;
|
||||
xdf2->changed[i] = 1;
|
||||
}
|
||||
xdf2->nreff = nreff;
|
||||
|
||||
|
||||
@ -48,7 +48,7 @@ typedef struct s_xdfile {
|
||||
xrecord_t *recs;
|
||||
long nrec;
|
||||
long dstart, dend;
|
||||
char *rchg;
|
||||
char *changed;
|
||||
long *rindex;
|
||||
long nreff;
|
||||
} xdfile_t;
|
||||
|
||||
@ -425,8 +425,8 @@ int xdl_fall_back_diff(xdfenv_t *diff_env, xpparam_t const *xpp,
|
||||
if (xdl_do_diff(&subfile1, &subfile2, xpp, &env) < 0)
|
||||
return -1;
|
||||
|
||||
memcpy(diff_env->xdf1.rchg + line1 - 1, env.xdf1.rchg, count1);
|
||||
memcpy(diff_env->xdf2.rchg + line2 - 1, env.xdf2.rchg, count2);
|
||||
memcpy(diff_env->xdf1.changed + line1 - 1, env.xdf1.changed, count1);
|
||||
memcpy(diff_env->xdf2.changed + line2 - 1, env.xdf2.changed, count2);
|
||||
|
||||
xdl_free_env(&env);
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user