mirror of
https://github.com/git/git.git
synced 2025-03-15 12:52:18 +00:00
sha1_name: convert get_sha1_mb to struct object_id
All of the callers of this function use struct object_id, so rename it to get_oid_mb and make it take struct object_id instead of unsigned char *. Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
71445a0fef
commit
151b2911c1
@ -973,7 +973,7 @@ static int parse_branchname_arg(int argc, const char **argv,
|
|||||||
if (!strcmp(arg, "-"))
|
if (!strcmp(arg, "-"))
|
||||||
arg = "@{-1}";
|
arg = "@{-1}";
|
||||||
|
|
||||||
if (get_sha1_mb(arg, rev->hash)) {
|
if (get_oid_mb(arg, rev)) {
|
||||||
/*
|
/*
|
||||||
* Either case (3) or (4), with <something> not being
|
* Either case (3) or (4), with <something> not being
|
||||||
* a commit, or an attempt to use case (1) with an
|
* a commit, or an attempt to use case (1) with an
|
||||||
|
2
cache.h
2
cache.h
@ -1204,7 +1204,7 @@ extern char *sha1_to_hex(const unsigned char *sha1); /* static buffer result! */
|
|||||||
extern char *oid_to_hex(const struct object_id *oid); /* same static buffer as sha1_to_hex */
|
extern char *oid_to_hex(const struct object_id *oid); /* same static buffer as sha1_to_hex */
|
||||||
|
|
||||||
extern int interpret_branch_name(const char *str, int len, struct strbuf *);
|
extern int interpret_branch_name(const char *str, int len, struct strbuf *);
|
||||||
extern int get_sha1_mb(const char *str, unsigned char *sha1);
|
extern int get_oid_mb(const char *str, struct object_id *oid);
|
||||||
|
|
||||||
extern int validate_headref(const char *ref);
|
extern int validate_headref(const char *ref);
|
||||||
|
|
||||||
|
18
sha1_name.c
18
sha1_name.c
@ -995,35 +995,35 @@ static int interpret_nth_prior_checkout(const char *name, int namelen,
|
|||||||
return retval;
|
return retval;
|
||||||
}
|
}
|
||||||
|
|
||||||
int get_sha1_mb(const char *name, unsigned char *sha1)
|
int get_oid_mb(const char *name, struct object_id *oid)
|
||||||
{
|
{
|
||||||
struct commit *one, *two;
|
struct commit *one, *two;
|
||||||
struct commit_list *mbs;
|
struct commit_list *mbs;
|
||||||
unsigned char sha1_tmp[20];
|
struct object_id oid_tmp;
|
||||||
const char *dots;
|
const char *dots;
|
||||||
int st;
|
int st;
|
||||||
|
|
||||||
dots = strstr(name, "...");
|
dots = strstr(name, "...");
|
||||||
if (!dots)
|
if (!dots)
|
||||||
return get_sha1(name, sha1);
|
return get_oid(name, oid);
|
||||||
if (dots == name)
|
if (dots == name)
|
||||||
st = get_sha1("HEAD", sha1_tmp);
|
st = get_oid("HEAD", &oid_tmp);
|
||||||
else {
|
else {
|
||||||
struct strbuf sb;
|
struct strbuf sb;
|
||||||
strbuf_init(&sb, dots - name);
|
strbuf_init(&sb, dots - name);
|
||||||
strbuf_add(&sb, name, dots - name);
|
strbuf_add(&sb, name, dots - name);
|
||||||
st = get_sha1_committish(sb.buf, sha1_tmp);
|
st = get_sha1_committish(sb.buf, oid_tmp.hash);
|
||||||
strbuf_release(&sb);
|
strbuf_release(&sb);
|
||||||
}
|
}
|
||||||
if (st)
|
if (st)
|
||||||
return st;
|
return st;
|
||||||
one = lookup_commit_reference_gently(sha1_tmp, 0);
|
one = lookup_commit_reference_gently(oid_tmp.hash, 0);
|
||||||
if (!one)
|
if (!one)
|
||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
if (get_sha1_committish(dots[3] ? (dots + 3) : "HEAD", sha1_tmp))
|
if (get_sha1_committish(dots[3] ? (dots + 3) : "HEAD", oid_tmp.hash))
|
||||||
return -1;
|
return -1;
|
||||||
two = lookup_commit_reference_gently(sha1_tmp, 0);
|
two = lookup_commit_reference_gently(oid_tmp.hash, 0);
|
||||||
if (!two)
|
if (!two)
|
||||||
return -1;
|
return -1;
|
||||||
mbs = get_merge_bases(one, two);
|
mbs = get_merge_bases(one, two);
|
||||||
@ -1031,7 +1031,7 @@ int get_sha1_mb(const char *name, unsigned char *sha1)
|
|||||||
st = -1;
|
st = -1;
|
||||||
else {
|
else {
|
||||||
st = 0;
|
st = 0;
|
||||||
hashcpy(sha1, mbs->item->object.oid.hash);
|
oidcpy(oid, &mbs->item->object.oid);
|
||||||
}
|
}
|
||||||
free_commit_list(mbs);
|
free_commit_list(mbs);
|
||||||
return st;
|
return st;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user