sha1_file: restore OBJECT_INFO_QUICK functionality

Support for the OBJECT_INFO_QUICK flag in sha1_object_info_extended() was added in commit dfdd4afcf9 ("sha1_file: teach sha1_object_info_extended more flags", 2017-06-26) in order to support commit e83e71c5e1 ("sha1_file: refactor has_sha1_file_with_flags", 2017-06-26), but it was inadvertently removed in commit 8b4c0103a9 ("sha1_file: support lazily fetching missing objects", 2017-12-08). Restore this functionality. Signed-off-by: Jonathan Tan <jonathantanmy@google.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>

Jonathan Tan committed Mar 13, 2018 at 08:30 UTC 2b7750c923636b75d74936089af0a0a68f5b1596
1 file changed +5 -3
sha1_file.c
+5 -3
@@ -1189,9 +1189,11 @@ int sha1_object_info_extended(const unsigned char *sha1, struct object_info *oi,
1189 return 0;
1190
1191 /* Not a loose object; someone else may have just packed it. */
1192 - reprepare_packed_git();
1193 - if (find_pack_entry(real, &e))
1194 - break;
1192 + if (!(flags & OBJECT_INFO_QUICK)) {
1193 + reprepare_packed_git();
1194 + if (find_pack_entry(real, &e))
1195 + break;
1196 + }
1197
1198 /* Check if it is a missing object */
1199 if (fetch_if_missing && repository_format_partial_clone &&