[PATCH v3 3/8] rebase: be stricter when reading state files containing oids
- From
- Phillip Wood via GitGitGadget <gitgitgadget@gmail.com>
- Date
- Oct 13, 2022, 08:42 UTC
- Message-ID
- <1fd58520253420fbe870a8528540dbc9e2178e3f.1665650564.git.gitgitgadget@gmail.com>
- In-Reply-To
- <pull.1323.v3.git.1665650564.gitgitgadget@gmail.com>
From: Phillip Wood <phillip.wood@dunelm.org.uk>
The state files for 'onto' and 'orig_head' should contain a full hex oid, change the reading functions from get_oid() to get_oid_hex() to reflect this.
Suggested-by: Junio C Hamano <gitster@pobox.com> Signed-off-by: Phillip Wood <phillip.wood@dunelm.org.uk> --- builtin/rebase.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/builtin/rebase.c b/builtin/rebase.c index 56e4214b441..76f83a42f49 100644 --- a/builtin/rebase.c +++ b/builtin/rebase.c @@ -431,7 +431,7 @@ static int read_basic_state(struct rebase_options *opts) opts->head_name = starts_with(head_name.buf, "refs/") ? xstrdup(head_name.buf) : NULL; strbuf_release(&head_name); - if (get_oid(buf.buf, &oid)) + if (get_oid_hex(buf.buf, &oid)) return error(_("could not get 'onto': '%s'"), buf.buf); opts->onto = lookup_commit_or_die(&oid, buf.buf); @@ -448,7 +448,7 @@ static int read_basic_state(struct rebase_options *opts) } else if (!read_oneliner(&buf, state_dir_path("head", opts), READ_ONELINER_WARN_MISSING)) return -1; - if (get_oid(buf.buf, &opts->orig_head)) + if (get_oid_hex(buf.buf, &opts->orig_head)) return error(_("invalid orig-head: '%s'"), buf.buf); if (file_exists(state_dir_path("quiet", opts)))
-- gitgitgadget