Add branch --set-upstream
[gitweb.git] / transport.c
index 652bf0bd8394056d3de558d0eb1635e02fc9f329..c3f156ea04636a722a49aca225175a6f9e9259c9 100644 (file)
@@ -143,7 +143,7 @@ static const char *rsync_url(const char *url)
 static struct ref *get_refs_via_rsync(struct transport *transport, int for_push)
 {
        struct strbuf buf = STRBUF_INIT, temp_dir = STRBUF_INIT;
-       struct ref dummy, *tail = &dummy;
+       struct ref dummy = {0}, *tail = &dummy;
        struct child_process rsync;
        const char *args[5];
        int temp_dir_len;
@@ -478,7 +478,7 @@ static int fetch_refs_via_pack(struct transport *transport,
        args.include_tag = data->options.followtags;
        args.verbose = (transport->verbose > 0);
        args.quiet = (transport->verbose < 0);
-       args.no_progress = args.quiet || (!transport->progress && !isatty(1));
+       args.no_progress = args.quiet || (!transport->progress && !isatty(2));
        args.depth = data->options.depth;
 
        for (i = 0; i < nr_heads; i++)
@@ -875,6 +875,9 @@ struct transport *transport_get(struct remote *remote, const char *url)
                url = remote->url[0];
        ret->url = url;
 
+       /* In case previous URL had helper forced, reset it. */
+       remote->foreign_vcs = NULL;
+
        /* maybe it is a foreign URL? */
        if (url) {
                const char *p = url;