xdl_merge(): allow passing down marker_size in xmparam_t
[gitweb.git] / builtin-read-tree.c
index 14c836b1693317d5d834606e5613d7ceacb3189c..7d378b75480331b242410b9680399728efbae49d 100644 (file)
@@ -13,6 +13,7 @@
 #include "dir.h"
 #include "builtin.h"
 #include "parse-options.h"
+#include "resolve-undo.h"
 
 static int nr_trees;
 static struct tree *trees[MAX_UNPACK_TREES];
@@ -108,11 +109,11 @@ int cmd_read_tree(int argc, const char **argv, const char *unused_prefix)
 
        git_config(git_default_config, NULL);
 
-       newfd = hold_locked_index(&lock_file, 1);
-
        argc = parse_options(argc, argv, unused_prefix, read_tree_options,
                             read_tree_usage, 0);
 
+       newfd = hold_locked_index(&lock_file, 1);
+
        prefix_set = opts.prefix ? 1 : 0;
        if (1 < opts.merge + opts.reset + prefix_set)
                die("Which one? -m, --reset, or --prefix?");
@@ -122,6 +123,7 @@ int cmd_read_tree(int argc, const char **argv, const char *unused_prefix)
                        die("You need to resolve your current index first");
                stage = opts.merge = 1;
        }
+       resolve_undo_clear();
 
        for (i = 0; i < argc; i++) {
                const char *arg = argv[i];