summaryrefslogtreecommitdiff
path: root/sha1_file.c
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2015-07-27 19:21:38 (GMT)
committerJunio C Hamano <gitster@pobox.com>2015-07-27 19:21:38 (GMT)
commitde62fe8c421344c34d375fc315f33eeb584ab538 (patch)
tree262646e6412478d81e7457c284b9b57edc6152a9 /sha1_file.c
parentbb3e7b1a5505bae590b0d85a3995a61d6dd82547 (diff)
parent0eeb077be7d526635995e17808927c94c70be665 (diff)
downloadgit-de62fe8c421344c34d375fc315f33eeb584ab538.zip
git-de62fe8c421344c34d375fc315f33eeb584ab538.tar.gz
git-de62fe8c421344c34d375fc315f33eeb584ab538.tar.bz2
Merge branch 'jk/index-pack-reduce-recheck' into maint
Disable "have we lost a race with competing repack?" check while receiving a huge object transfer that runs index-pack. * jk/index-pack-reduce-recheck: index-pack: avoid excessive re-reading of pack directory
Diffstat (limited to 'sha1_file.c')
-rw-r--r--sha1_file.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/sha1_file.c b/sha1_file.c
index 56c69ce..0c70152 100644
--- a/sha1_file.c
+++ b/sha1_file.c
@@ -3084,7 +3084,7 @@ int has_sha1_pack(const unsigned char *sha1)
return find_pack_entry(sha1, &e);
}
-int has_sha1_file(const unsigned char *sha1)
+int has_sha1_file_with_flags(const unsigned char *sha1, int flags)
{
struct pack_entry e;
@@ -3092,6 +3092,8 @@ int has_sha1_file(const unsigned char *sha1)
return 1;
if (has_loose_object(sha1))
return 1;
+ if (flags & HAS_SHA1_QUICK)
+ return 0;
reprepare_packed_git();
return find_pack_entry(sha1, &e);
}