From: Johannes Schindelin Date: Tue, 21 May 2019 17:50:21 +0000 (-0700) Subject: bisect--helper: verify HEAD could be parsed before continuing X-Git-Tag: v2.23.0-rc0~120^2 X-Git-Url: https://git.lorimer.id.au/gitweb.git/diff_plain/7877ac3d7b8ae84981c9c2fa86a4f3701ade4510 bisect--helper: verify HEAD could be parsed before continuing In 06f5608c14e6 (bisect--helper: `bisect_start` shell function partially in C, 2019-01-02), we introduced a call to `get_oid()` and did not check whether it succeeded before using its output. Signed-off-by: Johannes Schindelin Signed-off-by: Junio C Hamano --- diff --git a/builtin/bisect--helper.c b/builtin/bisect--helper.c index e7325fe37f..1fbe156e67 100644 --- a/builtin/bisect--helper.c +++ b/builtin/bisect--helper.c @@ -570,7 +570,10 @@ static int bisect_start(struct bisect_terms *terms, int no_checkout, write_file(git_path_bisect_start(), "%s\n", start_head.buf); if (no_checkout) { - get_oid(start_head.buf, &oid); + if (get_oid(start_head.buf, &oid) < 0) { + retval = error(_("invalid ref: '%s'"), start_head.buf); + goto finish; + } if (update_ref(NULL, "BISECT_HEAD", &oid, NULL, 0, UPDATE_REFS_MSG_ON_ERR)) { retval = -1;