Merge branch 'maint' into ph/checkout
[git.git] / builtin-checkout.c
index d6641c2c562c6b35bfed1cd3053945b460472581..9cadf9c299eb9875c74ac3beb629123ce2d9915c 100644 (file)
@@ -43,7 +43,7 @@ static int post_checkout_hook(struct commit *old, struct commit *new,
 }
 
 static int update_some(const unsigned char *sha1, const char *base, int baselen,
-                      const char *pathname, unsigned mode, int stage)
+               const char *pathname, unsigned mode, int stage, void *context)
 {
        int len;
        struct cache_entry *ce;
@@ -67,7 +67,7 @@ static int update_some(const unsigned char *sha1, const char *base, int baselen,
 
 static int read_tree_some(struct tree *tree, const char **pathspec)
 {
-       read_tree_recursive(tree, "", 0, 0, pathspec, update_some);
+       read_tree_recursive(tree, "", 0, 0, pathspec, update_some, NULL);
 
        /* update the index with the given tree's info
         * for all args, expanding wildcards, and exit
@@ -438,7 +438,8 @@ int cmd_checkout(int argc, const char **argv, const char *prefix)
 
        opts.track = git_branch_track;
 
-       argc = parse_options(argc, argv, options, checkout_usage, 0);
+       argc = parse_options(argc, argv, options, checkout_usage,
+                            PARSE_OPT_KEEP_DASHDASH);
        if (argc) {
                arg = argv[0];
                if (get_sha1(arg, rev))