am: configure gpg at startup
authorRenee Margaret McConahy <nepella@gmail.com>
Wed, 30 Sep 2015 17:49:44 +0000 (13:49 -0400)
committerJunio C Hamano <gitster@pobox.com>
Wed, 30 Sep 2015 20:02:30 +0000 (13:02 -0700)
The new builtin am ignores the user.signingkey variable: gpg is being
called with the committer details as the key ID, which may not be
correct. git_gpg_config is responsible for handling that variable and is
expected to be called on initialization by any modules that use gpg.

Signed-off-by: Renee Margaret McConahy <nepella@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
builtin/am.c
index 473d794fc5b293c885b6ebb8f3370d859776316a..ec75906e4e12fcd1cf34a5dc1445ca7685787f13 100644 (file)
@@ -2125,6 +2125,17 @@ enum resume_mode {
        RESUME_ABORT
 };
 
+static int git_am_config(const char *k, const char *v, void *cb)
+{
+       int status;
+
+       status = git_gpg_config(k, v, NULL);
+       if (status)
+               return status;
+
+       return git_default_config(k, v, NULL);
+}
+
 int cmd_am(int argc, const char **argv, const char *prefix)
 {
        struct am_state state;
@@ -2223,7 +2234,7 @@ int cmd_am(int argc, const char **argv, const char *prefix)
                OPT_END()
        };
 
-       git_config(git_default_config, NULL);
+       git_config(git_am_config, NULL);
 
        am_state_init(&state, git_path("rebase-apply"));