summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: 79d7222)
raw | patch | inline | side by side (parent: 79d7222)
author | Junio C Hamano <gitster@pobox.com> | |
Wed, 15 Aug 2007 22:45:10 +0000 (15:45 -0700) | ||
committer | Junio C Hamano <gitster@pobox.com> | |
Thu, 16 Aug 2007 04:36:37 +0000 (21:36 -0700) |
For multi-base merges, we allowed read-tree -m to take more than
three trees (the last two are our and their branches, and all the
earlier ones, typically one but potentially more, are used as the
merge base). Unfortunately, the conversion done by commit 933bf40
broke this.
Signed-off-by: Junio C Hamano <gitster@pobox.com>
three trees (the last two are our and their branches, and all the
earlier ones, typically one but potentially more, are used as the
merge base). Unfortunately, the conversion done by commit 933bf40
broke this.
Signed-off-by: Junio C Hamano <gitster@pobox.com>
builtin-read-tree.c | patch | blob | history |
diff --git a/builtin-read-tree.c b/builtin-read-tree.c
index 1967d100f28d70e588fde618aa7ed4a10b76ee1d..f6764b97392a582f442c356945d71a0bb8887308 100644 (file)
--- a/builtin-read-tree.c
+++ b/builtin-read-tree.c
#include "dir.h"
#include "builtin.h"
+#define MAX_TREES 4
static int nr_trees;
-static struct tree *trees[4];
+static struct tree *trees[MAX_TREES];
static int list_tree(unsigned char *sha1)
{
{
int i, newfd, stage = 0;
unsigned char sha1[20];
- struct tree_desc t[3];
+ struct tree_desc t[MAX_TREES];
struct unpack_trees_options opts;
memset(&opts, 0, sizeof(opts));
opts.head_idx = 1;
}
+ if (MAX_TREES < nr_trees)
+ die("I cannot read more than %d trees", MAX_TREES);
+
for (i = 0; i < nr_trees; i++) {
struct tree *tree = trees[i];
parse_tree(tree);