diff --color-moved: stop clearing potential moved blocks
moved_block_clear() was introduced in74d156f4a1
("diff --color-moved-ws: fix double free crash", 2018-10-04) to free the memory that was allocated when initializing a potential moved block. However since21536d077f
("diff --color-moved-ws: modify allow-indentation-change", 2018-11-23) initializing a potential moved block no longer allocates any memory. Up until the last commit we were relying on moved_block_clear() to set the `match` pointer to NULL when a block stopped matching, but since that commit we do not clear a moved block that does not match so it does not make sense to clear them elsewhere. Signed-off-by: Phillip Wood <phillip.wood@dunelm.org.uk> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
0e488f1732
commit
eec7f53b31
11
diff.c
11
diff.c
@ -807,11 +807,6 @@ struct moved_block {
|
|||||||
int wsd; /* The whitespace delta of this block */
|
int wsd; /* The whitespace delta of this block */
|
||||||
};
|
};
|
||||||
|
|
||||||
static void moved_block_clear(struct moved_block *b)
|
|
||||||
{
|
|
||||||
memset(b, 0, sizeof(*b));
|
|
||||||
}
|
|
||||||
|
|
||||||
#define INDENT_BLANKLINE INT_MIN
|
#define INDENT_BLANKLINE INT_MIN
|
||||||
|
|
||||||
static void fill_es_indent_data(struct emitted_diff_symbol *es)
|
static void fill_es_indent_data(struct emitted_diff_symbol *es)
|
||||||
@ -1128,8 +1123,6 @@ static void mark_color_as_moved(struct diff_options *o,
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (pmb_nr && (!match || l->s != moved_symbol)) {
|
if (pmb_nr && (!match || l->s != moved_symbol)) {
|
||||||
int i;
|
|
||||||
|
|
||||||
if (!adjust_last_block(o, n, block_length) &&
|
if (!adjust_last_block(o, n, block_length) &&
|
||||||
block_length > 1) {
|
block_length > 1) {
|
||||||
/*
|
/*
|
||||||
@ -1139,8 +1132,6 @@ static void mark_color_as_moved(struct diff_options *o,
|
|||||||
match = NULL;
|
match = NULL;
|
||||||
n -= block_length;
|
n -= block_length;
|
||||||
}
|
}
|
||||||
for(i = 0; i < pmb_nr; i++)
|
|
||||||
moved_block_clear(&pmb[i]);
|
|
||||||
pmb_nr = 0;
|
pmb_nr = 0;
|
||||||
block_length = 0;
|
block_length = 0;
|
||||||
flipped_block = 0;
|
flipped_block = 0;
|
||||||
@ -1193,8 +1184,6 @@ static void mark_color_as_moved(struct diff_options *o,
|
|||||||
}
|
}
|
||||||
adjust_last_block(o, n, block_length);
|
adjust_last_block(o, n, block_length);
|
||||||
|
|
||||||
for(n = 0; n < pmb_nr; n++)
|
|
||||||
moved_block_clear(&pmb[n]);
|
|
||||||
free(pmb);
|
free(pmb);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user