Signed-off-by: Junio C Hamano <gitster@xxxxxxxxx>
---
sha1_name.c | 13 +++++++++----
1 file changed, 9 insertions(+), 4 deletions(-)
diff --git a/sha1_name.c b/sha1_name.c
index df11ded..4a0fefd 100644
--- a/sha1_name.c
+++ b/sha1_name.c
@@ -170,14 +170,17 @@ static int find_short_packed_object(int len, const unsigned char *match,
#define SHORT_NAME_AMBIGUOUS (-2)
static int find_unique_short_object(int len, char *canonical,
- unsigned char *res, unsigned char *sha1)
+ unsigned char *res, unsigned char *sha1,
+ int commit_only)
{
int has_unpacked, has_packed;
unsigned char unpacked_sha1[20], packed_sha1[20];
prepare_alt_odb();
- has_unpacked = find_short_object_filename(len, canonical, unpacked_sha1, 0);
- has_packed = find_short_packed_object(len, res, packed_sha1, 0);
+ has_unpacked = find_short_object_filename(len, canonical, unpacked_sha1,
+ commit_only);
+ has_packed = find_short_packed_object(len, res, packed_sha1,
+ commit_only);
if (!has_unpacked && !has_packed)
return SHORT_NAME_NOT_FOUND;
if (1 < has_unpacked || 1 < has_packed)
@@ -194,6 +197,7 @@ static int find_unique_short_object(int len, char *canonical,
}
#define GET_SHORT_QUIETLY 01
+#define GET_SHORT_COMMIT_ONLY 02
static int get_short_sha1(const char *name, int len, unsigned char *sha1,
unsigned flags)
@@ -226,7 +230,8 @@ static int get_short_sha1(const char *name, int len, unsigned char *sha1,
res[i >> 1] |= val;
}
- status = find_unique_short_object(i, canonical, res, sha1);
+ status = find_unique_short_object(i, canonical, res, sha1,
+ !!(flags & GET_SHORT_COMMIT_ONLY));
if (!quietly && (status == SHORT_NAME_AMBIGUOUS))
return error("short SHA1 %.*s is ambiguous.", len, canonical);
return status;
--
1.7.11
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
[Newbies FAQ] [Linux Kernel Development] [Free Online Dating] [Gcc Help] [IETF Annouce] [DCCP] [Netdev] [Networking] [Security] [V4L] [Bugtraq] [Free Online Dating] [Photo] [Yosemite] [MIPS Linux] [ARM Linux] [Linux Security] [Linux RAID] [Linux SCSI] [Fedora Users] [Linux Resources]