diffcore-break: use a goto instead of a redundant if statement
The condition "if (q->nr <= j)" checks whether the loop exited normally or via a break statement. Avoid this check by replacing the jump out of the inner loop with a jump to the end of the outer loop, which makes it obvious that diff_q is not executed when the peer survives. Signed-off-by: Alex Henrie <alexhenrie24@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
8da02ce62a
commit
baed6bbb5b
@ -286,17 +286,17 @@ void diffcore_merge_broken(void)
|
|||||||
/* Peer survived. Merge them */
|
/* Peer survived. Merge them */
|
||||||
merge_broken(p, pp, &outq);
|
merge_broken(p, pp, &outq);
|
||||||
q->queue[j] = NULL;
|
q->queue[j] = NULL;
|
||||||
break;
|
goto next;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (q->nr <= j)
|
/* The peer did not survive, so we keep
|
||||||
/* The peer did not survive, so we keep
|
* it in the output.
|
||||||
* it in the output.
|
*/
|
||||||
*/
|
diff_q(&outq, p);
|
||||||
diff_q(&outq, p);
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
diff_q(&outq, p);
|
diff_q(&outq, p);
|
||||||
|
next:;
|
||||||
}
|
}
|
||||||
free(q->queue);
|
free(q->queue);
|
||||||
*q = outq;
|
*q = outq;
|
||||||
|
Loading…
Reference in New Issue
Block a user