Teach 'git checkout' to preload the index contents
[gitweb.git] / bundle.c
index 7d17a1fde16204859849aaf28945739aaa685f91..b20f2101f265786ed61e2ca08764aae249bad9d4 100644 (file)
--- a/bundle.c
+++ b/bundle.c
@@ -114,7 +114,7 @@ int verify_bundle(struct bundle_header *header, int verbose)
                        continue;
                }
                if (++ret == 1)
-                       error(message);
+                       error("%s", message);
                error("%s %s", sha1_to_hex(e->sha1), e->name);
        }
        if (revs.pending.nr != p->nr)
@@ -139,7 +139,7 @@ int verify_bundle(struct bundle_header *header, int verbose)
        for (i = 0; i < req_nr; i++)
                if (!(refs.objects[i].item->flags & SHOWN)) {
                        if (++ret == 1)
-                               error(message);
+                               error("%s", message);
                        error("%s %s", sha1_to_hex(refs.objects[i].item->sha1),
                                refs.objects[i].name);
                }
@@ -240,6 +240,8 @@ int create_bundle(struct bundle_header *header, const char *path,
                return error("unrecognized argument: %s'", argv[i]);
        }
 
+       object_array_remove_duplicates(&revs.pending);
+
        for (i = 0; i < revs.pending.nr; i++) {
                struct object_array_entry *e = revs.pending.objects + i;
                unsigned char sha1[20];