Commit Diff


commit - ca1af2458002521a86c887db84fe24ccc7002ab9
commit + 9f9e0ab43b25a75c30b677d0642dddfe868f4f34
blob - b4bc55624fc324a63bf6681bae9308ac681124ad
blob + c74bcf7a8413d667ee4804a41a38fffdbcf1f714
--- lib/diff_patience.c
+++ lib/diff_patience.c
@@ -363,6 +363,7 @@ diff_atoms_swallow_identical_neighbors(struct diff_dat
 	for (l_idx = 0; l_idx < left->atoms.len; l_idx = next_l_idx) {
 		next_l_idx = l_idx + 1;
 		struct diff_atom *l = &left->atoms.head[l_idx];
+		struct diff_atom *r;
 
 		if (!PATIENCE(l).unique_in_both)
 			continue;
@@ -371,6 +372,7 @@ diff_atoms_swallow_identical_neighbors(struct diff_dat
 		debug_dump_atom(left, right, l);
 
 		unsigned int r_idx = diff_atom_idx(right, PATIENCE(l).pos_in_other);
+		r = &right->atoms.head[r_idx];
 
 		struct diff_range identical_l;
 		struct diff_range identical_r;
@@ -423,8 +425,7 @@ diff_atoms_swallow_identical_neighbors(struct diff_dat
 		}
 
 		PATIENCE(l).identical_lines = identical_l;
-		PATIENCE(PATIENCE(l).pos_in_other).identical_lines =
-			identical_r;
+		PATIENCE(r).identical_lines = identical_r;
 
 		l_min = identical_l.end;
 		r_min = identical_r.end;