]> git.ipfire.org Git - thirdparty/git.git/commitdiff
Merge branch 'jk/committer-date-is-author-date-fix-simplify'
authorJunio C Hamano <gitster@pobox.com>
Mon, 9 Nov 2020 22:06:27 +0000 (14:06 -0800)
committerJunio C Hamano <gitster@pobox.com>
Mon, 9 Nov 2020 22:06:28 +0000 (14:06 -0800)
Code simplification.

* jk/committer-date-is-author-date-fix-simplify:
  am, sequencer: stop parsing our own committer ident

builtin/am.c
sequencer.c
sequencer.h

index b727449aedac55a683960efb9919656226d92a77..f22c73a05b0472dcf5ee1002282bd9f0c067b53b 100644 (file)
@@ -98,8 +98,6 @@ struct am_state {
        char *author_name;
        char *author_email;
        char *author_date;
-       char *committer_name;
-       char *committer_email;
        char *msg;
        size_t msg_len;
 
@@ -132,8 +130,6 @@ struct am_state {
  */
 static void am_state_init(struct am_state *state)
 {
-       const char *committer;
-       struct ident_split id;
        int gpgsign;
 
        memset(state, 0, sizeof(*state));
@@ -154,14 +150,6 @@ static void am_state_init(struct am_state *state)
 
        if (!git_config_get_bool("commit.gpgsign", &gpgsign))
                state->sign_commit = gpgsign ? "" : NULL;
-
-       committer = git_committer_info(IDENT_STRICT);
-       if (split_ident_line(&id, committer, strlen(committer)) < 0)
-               die(_("invalid committer: %s"), committer);
-       state->committer_name =
-               xmemdupz(id.name_begin, id.name_end - id.name_begin);
-       state->committer_email =
-               xmemdupz(id.mail_begin, id.mail_end - id.mail_begin);
 }
 
 /**
@@ -173,8 +161,6 @@ static void am_state_release(struct am_state *state)
        free(state->author_name);
        free(state->author_email);
        free(state->author_date);
-       free(state->committer_name);
-       free(state->committer_email);
        free(state->msg);
        strvec_clear(&state->git_apply_opts);
 }
@@ -1594,8 +1580,9 @@ static void do_commit(const struct am_state *state)
                        IDENT_STRICT);
 
        if (state->committer_date_is_author_date)
-               committer = fmt_ident(state->committer_name,
-                                     state->committer_email, WANT_COMMITTER_IDENT,
+               committer = fmt_ident(getenv("GIT_COMMITTER_NAME"),
+                                     getenv("GIT_COMMITTER_EMAIL"),
+                                     WANT_COMMITTER_IDENT,
                                      state->ignore_date ? NULL
                                                         : state->author_date,
                                      IDENT_STRICT);
index a65d7a6b7cd94652436b3d14256464ffbbc224a5..12443965c7befa8063cf5a7a52e00c380ff50f83 100644 (file)
@@ -314,8 +314,6 @@ int sequencer_remove_state(struct replay_opts *opts)
                }
        }
 
-       free(opts->committer_name);
-       free(opts->committer_email);
        free(opts->gpg_sign);
        free(opts->strategy);
        for (i = 0; i < opts->xopts_nr; i++)
@@ -1460,8 +1458,8 @@ static int try_to_commit(struct repository *r,
                } else {
                        reset_ident_date();
                }
-               committer = fmt_ident(opts->committer_name,
-                                     opts->committer_email,
+               committer = fmt_ident(getenv("GIT_COMMITTER_NAME"),
+                                     getenv("GIT_COMMITTER_EMAIL"),
                                      WANT_COMMITTER_IDENT,
                                      opts->ignore_date ? NULL : date.buf,
                                      IDENT_STRICT);
@@ -4468,22 +4466,6 @@ static int commit_staged_changes(struct repository *r,
        return 0;
 }
 
-static int init_committer(struct replay_opts *opts)
-{
-       struct ident_split id;
-       const char *committer;
-
-       committer = git_committer_info(IDENT_STRICT);
-       if (split_ident_line(&id, committer, strlen(committer)) < 0)
-               return error(_("invalid committer '%s'"), committer);
-       opts->committer_name =
-               xmemdupz(id.name_begin, id.name_end - id.name_begin);
-       opts->committer_email =
-               xmemdupz(id.mail_begin, id.mail_end - id.mail_begin);
-
-       return 0;
-}
-
 int sequencer_continue(struct repository *r, struct replay_opts *opts)
 {
        struct todo_list todo_list = TODO_LIST_INIT;
@@ -4495,9 +4477,6 @@ int sequencer_continue(struct repository *r, struct replay_opts *opts)
        if (read_populate_opts(opts))
                return -1;
        if (is_rebase_i(opts)) {
-               if (opts->committer_date_is_author_date && init_committer(opts))
-                       return -1;
-
                if ((res = read_populate_todo(r, &todo_list, opts)))
                        goto release_todo_list;
 
@@ -5392,9 +5371,6 @@ int complete_action(struct repository *r, struct replay_opts *opts, unsigned fla
 
        res = -1;
 
-       if (opts->committer_date_is_author_date && init_committer(opts))
-               goto cleanup;
-
        if (checkout_onto(r, opts, onto_name, &oid, orig_head))
                goto cleanup;
 
index b2a501e445316fc5a6d5befb341be3cfc1c74077..f925e349c52d127777a27c56ba463f335649e6fb 100644 (file)
@@ -50,8 +50,6 @@ struct replay_opts {
 
        int mainline;
 
-       char *committer_name;
-       char *committer_email;
        char *gpg_sign;
        enum commit_msg_cleanup_mode default_msg_cleanup;
        int explicit_cleanup;