]> git.ipfire.org Git - thirdparty/git.git/commitdiff
builtin/rebase: remove a call to get_oid() on `options.switch_to'
authorAlban Gruin <alban.gruin@gmail.com>
Tue, 21 Jan 2020 19:32:26 +0000 (20:32 +0100)
committerJunio C Hamano <gitster@pobox.com>
Wed, 26 Feb 2020 16:39:21 +0000 (08:39 -0800)
When `options.switch_to' is set, `options.orig_head' is populated right
after with the object name the ref/commit argument points at.

Therefore, there is no need to parse `switch_to' again.

Signed-off-by: Alban Gruin <alban.gruin@gmail.com>
Acked-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
builtin/rebase.c

index 8081741f8aac4e64010ae11871078917b5d535e8..d225c7f1af55eec176d7165e2dc22be4e6c49d8d 100644 (file)
@@ -2064,19 +2064,11 @@ int cmd_rebase(int argc, const char **argv, const char *prefix)
                if (!(options.flags & REBASE_FORCE)) {
                        /* Lazily switch to the target branch if needed... */
                        if (options.switch_to) {
-                               struct object_id oid;
-
-                               if (get_oid(options.switch_to, &oid) < 0) {
-                                       ret = !!error(_("could not parse '%s'"),
-                                                     options.switch_to);
-                                       goto cleanup;
-                               }
-
                                strbuf_reset(&buf);
                                strbuf_addf(&buf, "%s: checkout %s",
                                            getenv(GIT_REFLOG_ACTION_ENVIRONMENT),
                                            options.switch_to);
-                               if (reset_head(&oid, "checkout",
+                               if (reset_head(&options.orig_head, "checkout",
                                               options.head_name,
                                               RESET_HEAD_RUN_POST_CHECKOUT_HOOK,
                                               NULL, buf.buf) < 0) {