Re: [PATCH 1/2] sequencer.c: check for lock failure and bail early in fast_forward_to
- From
Brandon Casey <drafnel@gmail.com>
- Date
- Apr 16, 2014, 01:37 UTC
- Message-ID
- <CA+sFfMe1SB_Njpgq5VJQ3B-0Oh5nyJf5uf+WzzT-H6b1Cz-WRg@mail.gmail.com>
- In-Reply-To
- <1397605608-12128-2-git-send-email-sahlberg@google.com>
On Tue, Apr 15, 2014 at 4:46 PM, Ronnie Sahlberg <sahlberg@google.com> wrote:
<snip well-worded commit message>
Show 18 quoted lines
> Signed-off-by: Ronnie Sahlberg <sahlberg@google.com>
> ---
> sequencer.c | 7 +++++++
> 1 file changed, 7 insertions(+)
>
> diff --git a/sequencer.c b/sequencer.c
> index bde5f04..6aa3b50 100644
> --- a/sequencer.c
> +++ b/sequencer.c
> @@ -281,8 +281,15 @@ static int fast_forward_to(const unsigned char *to, const unsigned char *from,
> exit(1); /* the callee should have complained already */
> ref_lock = lock_any_ref_for_update("HEAD", unborn ? null_sha1 : from,
> 0, NULL);
> + if (!ref_lock) {
> + ret = error(_("Failed to lock HEAD during fast_forward_to"));
> + goto leave;
> + }
> +Or just:
if (!ref_lock)
return error(_("Failed to lock HEAD ..."));We don't need to strbuf_release() since the strbuf has not been modified at this point. We've only initialized with a static initializer.
Show 8 quoted lines
> strbuf_addf(&sb, "%s: fast-forward", action_name(opts)); > ret = write_ref_sha1(ref_lock, to, sb.buf); > + > +leave: > strbuf_release(&sb); > return ret; > } > --
-Brandon