]> asedeno.scripts.mit.edu Git - git.git/blobdiff - builtin/fetch.c
Introduce advise() to print hints
[git.git] / builtin / fetch.c
index e4296ab3bd1771e730a2955651163037f65fa6de..6eb1dfea092e2873c5910bf4389d3b071786d8b0 100644 (file)
@@ -574,9 +574,10 @@ static void find_non_local_tags(struct transport *transport,
 {
        struct string_list existing_refs = { NULL, 0, 0, 0 };
        struct string_list remote_refs = { NULL, 0, 0, 0 };
-       struct tag_data data = {head, tail};
+       struct tag_data data;
        const struct ref *ref;
        struct string_list_item *item = NULL;
+       data.head = head; data.tail = tail;
 
        for_each_ref(add_existing, &existing_refs);
        for (ref = transport_get_remote_refs(transport); ref; ref = ref->next) {
@@ -695,8 +696,8 @@ static int do_fetch(struct transport *transport,
 
        for (rm = ref_map; rm; rm = rm->next) {
                if (rm->peer_ref) {
-                       peer_item = string_list_lookup(rm->peer_ref->name,
-                                                      &existing_refs);
+                       peer_item = string_list_lookup(&existing_refs,
+                                                      rm->peer_ref->name);
                        if (peer_item)
                                hashcpy(rm->peer_ref->old_sha1,
                                        peer_item->util);
@@ -745,7 +746,7 @@ static int get_one_remote_for_fetch(struct remote *remote, void *priv)
 {
        struct string_list *list = priv;
        if (!remote->skip_default_update)
-               string_list_append(remote->name, list);
+               string_list_append(list, remote->name);
        return 0;
 }
 
@@ -764,8 +765,8 @@ static int get_remote_group(const char *key, const char *value, void *priv)
                int space = strcspn(value, " \t\n");
                while (*value) {
                        if (space > 1) {
-                               string_list_append(xstrndup(value, space),
-                                                  g->list);
+                               string_list_append(g->list,
+                                                  xstrndup(value, space));
                        }
                        value += space + (value[space] != '\0');
                        space = strcspn(value, " \t\n");
@@ -778,7 +779,8 @@ static int get_remote_group(const char *key, const char *value, void *priv)
 static int add_remote_or_group(const char *name, struct string_list *list)
 {
        int prev_nr = list->nr;
-       struct remote_group_data g = { name, list };
+       struct remote_group_data g;
+       g.name = name; g.list = list;
 
        git_config(get_remote_group, &g);
        if (list->nr == prev_nr) {
@@ -786,7 +788,7 @@ static int add_remote_or_group(const char *name, struct string_list *list)
                if (!remote_is_configured(name))
                        return 0;
                remote = remote_get(name);
-               string_list_append(remote->name, list);
+               string_list_append(list, remote->name);
        }
        return 1;
 }