diff: use SWAP macro

Use the macro SWAP to exchange the value of pairs of variables instead of swapping them manually with the help of a temporary variable. The resulting code is shorter and easier to read. The two cases were not transformed by the semantic patch swap.cocci because it's extra careful and handles only cases where the types of all variables are the same -- and here we swap two ints and use an unsigned temporary variable for that. Nevertheless the conversion is safe, as the value range is preserved with and without the patch. Signed-off-by: Rene Scharfe <l.s.r@web.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>

René Scharfe committed Jan 28, 2017 at 22:41 UTC 402bf8e19832142de97d84d37c51262d91e5f2db
2 files changed +2 -5
diff-no-index.c
+1 -2
@@ -185,8 +185,7 @@ static int queue_diff(struct diff_options *o,
185 struct diff_filespec *d1, *d2;
186
187 if (DIFF_OPT_TST(o, REVERSE_DIFF)) {
188 - unsigned tmp;
189 - tmp = mode1; mode1 = mode2; mode2 = tmp;
188 + SWAP(mode1, mode2);
189 SWAP(name1, name2);
190 }
191
diff.c
+1 -3
@@ -5117,11 +5117,9 @@ void diff_change(struct diff_options *options,
5117 return;
5118
5119 if (DIFF_OPT_TST(options, REVERSE_DIFF)) {
5120 - unsigned tmp;
5120 SWAP(old_mode, new_mode);
5121 SWAP(old_sha1, new_sha1);
5123 - tmp = old_sha1_valid; old_sha1_valid = new_sha1_valid;
5124 - new_sha1_valid = tmp;
5122 + SWAP(old_sha1_valid, new_sha1_valid);
5123 SWAP(old_dirty_submodule, new_dirty_submodule);
5124 }
5125