commit: factor out set_merge_remote_desc()
Export a helper function for allocating, populating and attaching a merge_remote_desc to a commit. Signed-off-by: Rene Scharfe <l.s.r@web.de> Reviewed-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
c089320cf6
commit
beb518c985
19
commit.c
19
commit.c
@ -1576,6 +1576,16 @@ int commit_tree_extended(const char *msg, size_t msg_len,
|
||||
return result;
|
||||
}
|
||||
|
||||
void set_merge_remote_desc(struct commit *commit,
|
||||
const char *name, struct object *obj)
|
||||
{
|
||||
struct merge_remote_desc *desc;
|
||||
desc = xmalloc(sizeof(*desc));
|
||||
desc->obj = obj;
|
||||
desc->name = xstrdup(name);
|
||||
commit->util = desc;
|
||||
}
|
||||
|
||||
struct commit *get_merge_parent(const char *name)
|
||||
{
|
||||
struct object *obj;
|
||||
@ -1585,13 +1595,8 @@ struct commit *get_merge_parent(const char *name)
|
||||
return NULL;
|
||||
obj = parse_object(oid.hash);
|
||||
commit = (struct commit *)peel_to_type(name, 0, obj, OBJ_COMMIT);
|
||||
if (commit && !commit->util) {
|
||||
struct merge_remote_desc *desc;
|
||||
desc = xmalloc(sizeof(*desc));
|
||||
desc->obj = obj;
|
||||
desc->name = xstrdup(name);
|
||||
commit->util = desc;
|
||||
}
|
||||
if (commit && !commit->util)
|
||||
set_merge_remote_desc(commit, name, obj);
|
||||
return commit;
|
||||
}
|
||||
|
||||
|
2
commit.h
2
commit.h
@ -359,6 +359,8 @@ struct merge_remote_desc {
|
||||
const char *name;
|
||||
};
|
||||
#define merge_remote_util(commit) ((struct merge_remote_desc *)((commit)->util))
|
||||
extern void set_merge_remote_desc(struct commit *commit,
|
||||
const char *name, struct object *obj);
|
||||
|
||||
/*
|
||||
* Given "name" from the command line to merge, find the commit object
|
||||
|
Loading…
Reference in New Issue
Block a user