diff options
author | Avery Pennarun <apenwarr@gmail.com> | 2009-11-25 21:23:54 -0500 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2009-11-29 18:49:11 -0800 |
commit | ed87465658c83a5a1617920e7b605bd830a78aed (patch) | |
tree | dab8c5958dc5075182409f9385def978b7968b2b | |
parent | GIT 1.6.5 (diff) | |
download | tgif-ed87465658c83a5a1617920e7b605bd830a78aed.tar.xz |
builtin-merge.c: call exclude_cmds() correctly.
We need to call exclude_cmds() after the loop, not during the loop, because
excluding a command from the array can change the indexes of objects in the
array. The result is that, depending on file ordering, some commands
weren't excluded as they should have been.
Signed-off-by: Avery Pennarun <apenwarr@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r-- | builtin-merge.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/builtin-merge.c b/builtin-merge.c index b6b84286b2..4bcf7c7bce 100644 --- a/builtin-merge.c +++ b/builtin-merge.c @@ -106,8 +106,8 @@ static struct strategy *get_strategy(const char *name) found = 1; if (!found) add_cmdname(¬_strategies, ent->name, ent->len); - exclude_cmds(&main_cmds, ¬_strategies); } + exclude_cmds(&main_cmds, ¬_strategies); } if (!is_in_cmdlist(&main_cmds, name) && !is_in_cmdlist(&other_cmds, name)) { fprintf(stderr, "Could not find merge strategy '%s'.\n", name); |