summaryrefslogtreecommitdiff
path: root/blame.h
diff options
context:
space:
mode:
authorDerrick Stolee <dstolee@microsoft.com>2018-09-21 15:05:26 (GMT)
committerJunio C Hamano <gitster@pobox.com>2018-09-21 18:36:27 (GMT)
commitb67f6b26e354813d8cd792dcb3eb1a1b60b98a08 (patch)
tree36cb1a253063e6a0c6dc24688532ae9c251f2e96 /blame.h
parent6621c838743812aaba96e55cfec8524ea1144c2d (diff)
downloadgit-b67f6b26e354813d8cd792dcb3eb1a1b60b98a08.zip
git-b67f6b26e354813d8cd792dcb3eb1a1b60b98a08.tar.gz
git-b67f6b26e354813d8cd792dcb3eb1a1b60b98a08.tar.bz2
commit-reach: properly peel tags
The can_all_from_reach_with_flag() algorithm was refactored in 4fbcca4e "commit-reach: make can_all_from_reach... linear" but incorrectly assumed that all objects provided were commits. During a fetch negotiation, ok_to_give_up() in upload-pack.c may provide unpeeled tags to the 'from' array. The current code creates a segfault. Add a direct call to can_all_from_reach_with_flag() in 'test-tool reach' and add a test in t6600-test-reach.sh that demonstrates this segfault. Correct the issue by peeling tags when investigating the initial list of objects in the 'from' array. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Derrick Stolee <dstolee@microsoft.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'blame.h')
0 files changed, 0 insertions, 0 deletions