unpack-objects: call fsck_finish() after fscking objects
commit6e328d6caef218db320978e3e251009135d87d0e
authorJeff King <peff@peff.net>
Fri, 4 May 2018 23:40:08 +0000 (4 19:40 -0400)
committerJeff King <peff@peff.net>
Tue, 22 May 2018 03:55:12 +0000 (21 23:55 -0400)
treee1d1fe6c3697352fb13c279cc7decf32581548cf
parent1995b5e03e1cc97116be58cdc0502d4a23547856
unpack-objects: call fsck_finish() after fscking objects

As with the previous commit, we must call fsck's "finish"
function in order to catch any queued objects for
.gitmodules checks.

This second pass will be able to access any incoming
objects, because we will have exploded them to loose objects
by now.

This isn't quite ideal, because it means that bad objects
may have been written to the object database (and a
subsequent operation could then reference them, even if the
other side doesn't send the objects again). However, this is
sufficient when used with receive.fsckObjects, since those
loose objects will all be placed in a temporary quarantine
area that will get wiped if we find any problems.

Signed-off-by: Jeff King <peff@peff.net>
builtin/unpack-objects.c
t/t7415-submodule-names.sh