merge-recursive: Restructure showing how to chain more process_* functions
[gitweb.git] / connect.c
index 02e738a0146a5c46aaf3f1d8edc3c055a99e98b9..3450cabd0e3281e0eeedeb35d331b95bf95f5afb 100644 (file)
--- a/connect.c
+++ b/connect.c
@@ -621,13 +621,16 @@ int finish_connect(struct child_process *conn)
 
 char *git_getpass(const char *prompt)
 {
-       char *askpass;
+       const char *askpass;
        struct child_process pass;
        const char *args[3];
        static struct strbuf buffer = STRBUF_INIT;
 
        askpass = getenv("GIT_ASKPASS");
-
+       if (!askpass)
+               askpass = askpass_program;
+       if (!askpass)
+               askpass = getenv("SSH_ASKPASS");
        if (!askpass || !(*askpass))
                return getpass(prompt);