summaryrefslogtreecommitdiff
path: root/builtin/checkout.c
diff options
context:
space:
mode:
authorJohannes Schindelin <johannes.schindelin@gmx.de>2016-07-26 16:05:57 (GMT)
committerJunio C Hamano <gitster@pobox.com>2016-07-26 18:13:44 (GMT)
commitf8d83fb66c653fff0541067a0b5a0821d3f548f9 (patch)
treeb18ea00e8dbbe6bca83bdf83c77724060a518ade /builtin/checkout.c
parent7e97e1003349107b9fdc388bb4aa006fae9ab560 (diff)
downloadgit-f8d83fb66c653fff0541067a0b5a0821d3f548f9.zip
git-f8d83fb66c653fff0541067a0b5a0821d3f548f9.tar.gz
git-f8d83fb66c653fff0541067a0b5a0821d3f548f9.tar.bz2
merge-recursive: clarify code in was_tracked()
It can be puzzling to see that was_tracked() asks to get an index entry by name, but does not take a negative return value for an answer. The reason we have to do this is that cache_name_pos() only looks for entries in stage 0, even if nobody asked for any stage in particular. Let's rewrite the logic a little bit, to handle the easy case early: if cache_name_pos() returned a non-negative position, we know it is a match, and we do not even have to compare the name again (cache_name_pos() did that for us already). We can say right away: yes, this file was tracked. Only if there was no exact match do we need to look harder for any matching entry in stage 2. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'builtin/checkout.c')
0 files changed, 0 insertions, 0 deletions