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 &&