Git fork

xdiff: change type of xdfile_t.changed from char to bool

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>

authored by

Ezekiel Newren and committed by
Junio C Hamano
8b9c5d2e e385e1b7

+22 -22
+7 -7
xdiff/xdiffi.c
··· 278 278 */ 279 279 if (off1 == lim1) { 280 280 for (; off2 < lim2; off2++) 281 - xdf2->changed[xdf2->rindex[off2]] = 1; 281 + xdf2->changed[xdf2->rindex[off2]] = true; 282 282 } else if (off2 == lim2) { 283 283 for (; off1 < lim1; off1++) 284 - xdf1->changed[xdf1->rindex[off1]] = 1; 284 + xdf1->changed[xdf1->rindex[off1]] = true; 285 285 } else { 286 286 xdpsplit_t spl; 287 287 spl.i1 = spl.i2 = 0; ··· 753 753 { 754 754 if (g->end < xdf->nrec && 755 755 recs_match(&xdf->recs[g->start], &xdf->recs[g->end])) { 756 - xdf->changed[g->start++] = 0; 757 - xdf->changed[g->end++] = 1; 756 + xdf->changed[g->start++] = false; 757 + xdf->changed[g->end++] = true; 758 758 759 759 while (xdf->changed[g->end]) 760 760 g->end++; ··· 774 774 { 775 775 if (g->start > 0 && 776 776 recs_match(&xdf->recs[g->start - 1], &xdf->recs[g->end - 1])) { 777 - xdf->changed[--g->start] = 1; 778 - xdf->changed[--g->end] = 0; 777 + xdf->changed[--g->start] = true; 778 + xdf->changed[--g->end] = false; 779 779 780 780 while (xdf->changed[g->start - 1]) 781 781 g->start--; ··· 932 932 933 933 int xdl_build_script(xdfenv_t *xe, xdchange_t **xscr) { 934 934 xdchange_t *cscr = NULL, *xch; 935 - char *changed1 = xe->xdf1.changed, *changed2 = xe->xdf2.changed; 935 + bool *changed1 = xe->xdf1.changed, *changed2 = xe->xdf2.changed; 936 936 long i1, i2, l1, l2; 937 937 938 938 /*
+4 -4
xdiff/xhistogram.c
··· 318 318 319 319 if (!count1) { 320 320 while(count2--) 321 - env->xdf2.changed[line2++ - 1] = 1; 321 + env->xdf2.changed[line2++ - 1] = true; 322 322 return 0; 323 323 } else if (!count2) { 324 324 while(count1--) 325 - env->xdf1.changed[line1++ - 1] = 1; 325 + env->xdf1.changed[line1++ - 1] = true; 326 326 return 0; 327 327 } 328 328 ··· 335 335 else { 336 336 if (lcs.begin1 == 0 && lcs.begin2 == 0) { 337 337 while (count1--) 338 - env->xdf1.changed[line1++ - 1] = 1; 338 + env->xdf1.changed[line1++ - 1] = true; 339 339 while (count2--) 340 - env->xdf2.changed[line2++ - 1] = 1; 340 + env->xdf2.changed[line2++ - 1] = true; 341 341 result = 0; 342 342 } else { 343 343 result = histogram_diff(xpp, env,
+4 -4
xdiff/xpatience.c
··· 331 331 /* trivial case: one side is empty */ 332 332 if (!count1) { 333 333 while(count2--) 334 - env->xdf2.changed[line2++ - 1] = 1; 334 + env->xdf2.changed[line2++ - 1] = true; 335 335 return 0; 336 336 } else if (!count2) { 337 337 while(count1--) 338 - env->xdf1.changed[line1++ - 1] = 1; 338 + env->xdf1.changed[line1++ - 1] = true; 339 339 return 0; 340 340 } 341 341 ··· 347 347 /* are there any matching lines at all? */ 348 348 if (!map.has_matches) { 349 349 while(count1--) 350 - env->xdf1.changed[line1++ - 1] = 1; 350 + env->xdf1.changed[line1++ - 1] = true; 351 351 while(count2--) 352 - env->xdf2.changed[line2++ - 1] = 1; 352 + env->xdf2.changed[line2++ - 1] = true; 353 353 xdl_free(map.entries); 354 354 return 0; 355 355 }
+6 -6
xdiff/xprepare.c
··· 273 273 274 274 /* 275 275 * Create temporary arrays that will help us decide if 276 - * changed[i] should remain 0 or become 1. 276 + * changed[i] should remain false, or become true. 277 277 */ 278 278 if (!XDL_CALLOC_ARRAY(action1, xdf1->nrec + 1)) { 279 279 ret = -1; ··· 305 305 306 306 /* 307 307 * Use temporary arrays to decide if changed[i] should remain 308 - * 0 or become 1. 308 + * false, or become true. 309 309 */ 310 310 for (nreff = 0, i = xdf1->dstart, recs = &xdf1->recs[xdf1->dstart]; 311 311 i <= xdf1->dend; i++, recs++) { 312 312 if (action1[i] == KEEP || 313 313 (action1[i] == INVESTIGATE && !xdl_clean_mmatch(action1, i, xdf1->dstart, xdf1->dend))) { 314 314 xdf1->rindex[nreff++] = i; 315 - /* changed[i] remains 0, i.e. keep */ 315 + /* changed[i] remains false, i.e. keep */ 316 316 } else 317 - xdf1->changed[i] = 1; 317 + xdf1->changed[i] = true; 318 318 /* i.e. discard */ 319 319 } 320 320 xdf1->nreff = nreff; ··· 324 324 if (action2[i] == KEEP || 325 325 (action2[i] == INVESTIGATE && !xdl_clean_mmatch(action2, i, xdf2->dstart, xdf2->dend))) { 326 326 xdf2->rindex[nreff++] = i; 327 - /* changed[i] remains 0, i.e. keep */ 327 + /* changed[i] remains false, i.e. keep */ 328 328 } else 329 - xdf2->changed[i] = 1; 329 + xdf2->changed[i] = true; 330 330 /* i.e. discard */ 331 331 } 332 332 xdf2->nreff = nreff;
+1 -1
xdiff/xtypes.h
··· 48 48 xrecord_t *recs; 49 49 long nrec; 50 50 long dstart, dend; 51 - char *changed; 51 + bool *changed; 52 52 long *rindex; 53 53 long nreff; 54 54 } xdfile_t;