diff --color-moved: stop clearing potential moved blocks

moved_block_clear() was introduced in 74d156f4a1 ("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 since 21536d077f ("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>

Phillip Wood committed Dec 9, 2021 at 10:30 UTC eec7f53b3150dcc54ea0f4441587724be65c105d
1 file changed -11
diff.c
-11
@@ -807,11 +807,6 @@ struct moved_block {
807 int wsd; /* The whitespace delta of this block */
808 };
809
810 -static void moved_block_clear(struct moved_block *b)
811 -{
812 - memset(b, 0, sizeof(*b));
813 -}
814 -
810 #define INDENT_BLANKLINE INT_MIN
811
812 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,
1123 }
1124
1125 if (pmb_nr && (!match || l->s != moved_symbol)) {
1131 - int i;
1132 -
1126 if (!adjust_last_block(o, n, block_length) &&
1127 block_length > 1) {
1128 /*
@@ -1139,8 +1132,6 @@ static void mark_color_as_moved(struct diff_options *o,
1132 match = NULL;
1133 n -= block_length;
1134 }
1142 - for(i = 0; i < pmb_nr; i++)
1143 - moved_block_clear(&pmb[i]);
1135 pmb_nr = 0;
1136 block_length = 0;
1137 flipped_block = 0;
@@ -1193,8 +1184,6 @@ static void mark_color_as_moved(struct diff_options *o,
1184 }
1185 adjust_last_block(o, n, block_length);
1186
1196 - for(n = 0; n < pmb_nr; n++)
1197 - moved_block_clear(&pmb[n]);
1187 free(pmb);
1188 }
1189