]> git.ipfire.org Git - thirdparty/git.git/commitdiff
xdiff: change type of xdfile_t.changed from char to bool
authorEzekiel Newren <ezekielnewren@gmail.com>
Fri, 26 Sep 2025 22:41:59 +0000 (22:41 +0000)
committerJunio C Hamano <gitster@pobox.com>
Fri, 3 Oct 2025 17:19:40 +0000 (10:19 -0700)
The only values possible for 'changed' is 1 and 0, which exactly maps
to a bool type. It might not look like this because action1 and action2
(which use to be dis1, and dis2) were also of type char and were
assigned numerical values within a few lines of 'changed' (what used to
be rchg).

Using DISCARD/KEEP/INVESTIGATE for action1[i]/action2[j], and true/false
for changed[k] makes it clear to future readers that these are
logically separate concepts.

Best-viewed-with: --color-words
Signed-off-by: Ezekiel Newren <ezekielnewren@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
xdiff/xdiffi.c
xdiff/xhistogram.c
xdiff/xpatience.c
xdiff/xprepare.c
xdiff/xtypes.h

index bd5b31c6649993cd21df835a29bea400e6e275d1..6f3998ee54c01e9ed2572877cff2244620b70930 100644 (file)
@@ -278,10 +278,10 @@ int xdl_recs_cmp(xdfile_t *xdf1, long off1, long lim1,
         */
        if (off1 == lim1) {
                for (; off2 < lim2; off2++)
-                       xdf2->changed[xdf2->rindex[off2]] = 1;
+                       xdf2->changed[xdf2->rindex[off2]] = true;
        } else if (off2 == lim2) {
                for (; off1 < lim1; off1++)
-                       xdf1->changed[xdf1->rindex[off1]] = 1;
+                       xdf1->changed[xdf1->rindex[off1]] = true;
        } else {
                xdpsplit_t spl;
                spl.i1 = spl.i2 = 0;
@@ -753,8 +753,8 @@ 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->changed[g->start++] = 0;
-               xdf->changed[g->end++] = 1;
+               xdf->changed[g->start++] = false;
+               xdf->changed[g->end++] = true;
 
                while (xdf->changed[g->end])
                        g->end++;
@@ -774,8 +774,8 @@ 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->changed[--g->start] = 1;
-               xdf->changed[--g->end] = 0;
+               xdf->changed[--g->start] = true;
+               xdf->changed[--g->end] = false;
 
                while (xdf->changed[g->start - 1])
                        g->start--;
@@ -932,7 +932,7 @@ 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 *changed1 = xe->xdf1.changed, *changed2 = xe->xdf2.changed;
+       bool *changed1 = xe->xdf1.changed, *changed2 = xe->xdf2.changed;
        long i1, i2, l1, l2;
 
        /*
index 15ca15f6b0ad82279f5777088fabcaf9eeda107b..6dc450b1fe1dfc2c85d7acf98c948581b48e6f28 100644 (file)
@@ -318,11 +318,11 @@ redo:
 
        if (!count1) {
                while(count2--)
-                       env->xdf2.changed[line2++ - 1] = 1;
+                       env->xdf2.changed[line2++ - 1] = true;
                return 0;
        } else if (!count2) {
                while(count1--)
-                       env->xdf1.changed[line1++ - 1] = 1;
+                       env->xdf1.changed[line1++ - 1] = true;
                return 0;
        }
 
@@ -335,9 +335,9 @@ redo:
        else {
                if (lcs.begin1 == 0 && lcs.begin2 == 0) {
                        while (count1--)
-                               env->xdf1.changed[line1++ - 1] = 1;
+                               env->xdf1.changed[line1++ - 1] = true;
                        while (count2--)
-                               env->xdf2.changed[line2++ - 1] = 1;
+                               env->xdf2.changed[line2++ - 1] = true;
                        result = 0;
                } else {
                        result = histogram_diff(xpp, env,
index 14092ffb8656ee7fb8ff2d70a22bf1d69e6399e4..669b653580efe6f9ecd295bc55c838fa0113ca21 100644 (file)
@@ -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.changed[line2++ - 1] = 1;
+                       env->xdf2.changed[line2++ - 1] = true;
                return 0;
        } else if (!count2) {
                while(count1--)
-                       env->xdf1.changed[line1++ - 1] = 1;
+                       env->xdf1.changed[line1++ - 1] = true;
                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.changed[line1++ - 1] = 1;
+                       env->xdf1.changed[line1++ - 1] = true;
                while(count2--)
-                       env->xdf2.changed[line2++ - 1] = 1;
+                       env->xdf2.changed[line2++ - 1] = true;
                xdl_free(map.entries);
                return 0;
        }
index 55e3b50ce6dfbb9e209ce0c847af0510240292ca..192334f1b72e630dba7e9400dc4741d2c07cff9a 100644 (file)
@@ -273,7 +273,7 @@ static int xdl_cleanup_records(xdlclassifier_t *cf, xdfile_t *xdf1, xdfile_t *xd
 
        /*
         * Create temporary arrays that will help us decide if
-        * changed[i] should remain 0 or become 1.
+        * changed[i] should remain false, or become true.
         */
        if (!XDL_CALLOC_ARRAY(action1, xdf1->nrec + 1)) {
                ret = -1;
@@ -305,16 +305,16 @@ static int xdl_cleanup_records(xdlclassifier_t *cf, xdfile_t *xdf1, xdfile_t *xd
 
        /*
         * Use temporary arrays to decide if changed[i] should remain
-        * 0 or become 1.
+        * false, or become true.
         */
        for (nreff = 0, i = xdf1->dstart, recs = &xdf1->recs[xdf1->dstart];
             i <= xdf1->dend; i++, recs++) {
                if (action1[i] == KEEP ||
                    (action1[i] == INVESTIGATE && !xdl_clean_mmatch(action1, i, xdf1->dstart, xdf1->dend))) {
                        xdf1->rindex[nreff++] = i;
-                       /* changed[i] remains 0, i.e. keep */
+                       /* changed[i] remains false, i.e. keep */
                } else
-                       xdf1->changed[i] = 1;
+                       xdf1->changed[i] = true;
                        /* i.e. discard */
        }
        xdf1->nreff = nreff;
@@ -324,9 +324,9 @@ static int xdl_cleanup_records(xdlclassifier_t *cf, xdfile_t *xdf1, xdfile_t *xd
                if (action2[i] == KEEP ||
                    (action2[i] == INVESTIGATE && !xdl_clean_mmatch(action2, i, xdf2->dstart, xdf2->dend))) {
                        xdf2->rindex[nreff++] = i;
-                       /* changed[i] remains 0, i.e. keep */
+                       /* changed[i] remains false, i.e. keep */
                } else
-                       xdf2->changed[i] = 1;
+                       xdf2->changed[i] = true;
                        /* i.e. discard */
        }
        xdf2->nreff = nreff;
index c4b5d2d8fa6cd7418c5abf95dbf0e57021e6c9e9..f145abba3ea8a30f859dca127e3dda43fca8e07d 100644 (file)
@@ -48,7 +48,7 @@ typedef struct s_xdfile {
        xrecord_t *recs;
        long nrec;
        long dstart, dend;
-       char *changed;
+       bool *changed;
        long *rindex;
        long nreff;
 } xdfile_t;