From 71564516deccafba0a58129bd7d3851e28fdb4bb Mon Sep 17 00:00:00 2001 From: Michael Haggerty Date: Mon, 25 Apr 2016 11:39:54 +0200 Subject: add_update(): initialize the whole ref_update Change add_update() to initialize all of the fields in the new ref_update object. Rename the function to ref_transaction_add_update(), and increase its visibility to all of the refs-related code. All of this makes the function more useful for other future callers. Signed-off-by: Michael Haggerty --- refs/refs-internal.h | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'refs/refs-internal.h') diff --git a/refs/refs-internal.h b/refs/refs-internal.h index 9686e6094..babdf2769 100644 --- a/refs/refs-internal.h +++ b/refs/refs-internal.h @@ -157,6 +157,20 @@ struct ref_update { const char refname[FLEX_ARRAY]; }; +/* + * Add a ref_update with the specified properties to transaction, and + * return a pointer to the new object. This function does not verify + * that refname is well-formed. new_sha1 and old_sha1 are only + * dereferenced if the REF_HAVE_NEW and REF_HAVE_OLD bits, + * respectively, are set in flags. + */ +struct ref_update *ref_transaction_add_update( + struct ref_transaction *transaction, + const char *refname, unsigned int flags, + const unsigned char *new_sha1, + const unsigned char *old_sha1, + const char *msg); + /* * Transaction states. * OPEN: The transaction is in a valid state and can accept new updates. -- cgit v1.2.1