Done. Thanks. On Wed, May 28, 2014 at 12:31 PM, Jonathan Nieder <jrnieder@xxxxxxxxx> wrote: > Ronnie Sahlberg wrote: > >> --- a/refs.c >> +++ b/refs.c >> @@ -3474,11 +3474,28 @@ int update_ref(const char *action, const char *refname, >> const unsigned char *sha1, const unsigned char *oldval, >> int flags, enum action_on_err onerr) >> { >> - struct ref_lock *lock; >> - lock = update_ref_lock(refname, oldval, flags, NULL, onerr); >> - if (!lock) >> + struct ref_transaction *t; >> + struct strbuf err = STRBUF_INIT; >> + >> + t = ref_transaction_begin(&err); >> + if ((!t || >> + ref_transaction_update(t, refname, sha1, oldval, flags, >> + !!oldval, &err)) || > > (style) Extra parens. > >> + (ref_transaction_commit(t, action, &err) && !(t = NULL))) { > > No need for this assignment-in-if. > > With the following squashed in, > Reviewed-by: Jonathan Nieder <jrnieder@xxxxxxxxx> > > diff --git i/refs.c w/refs.c > index 568b358..fb462a3 100644 > --- i/refs.c > +++ w/refs.c > @@ -3474,10 +3474,10 @@ int update_ref(const char *action, const char *refname, > struct strbuf err = STRBUF_INIT; > > t = ref_transaction_begin(&err); > - if ((!t || > + if (!t || > ref_transaction_update(t, refname, sha1, oldval, flags, > - !!oldval, &err)) || > - (ref_transaction_commit(t, action, &err) && !(t = NULL))) { > + !!oldval, &err) || > + ref_transaction_commit(t, action, &err)) { > const char *str = "update_ref failed for ref '%s': %s"; > > ref_transaction_free(t); -- 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