From: Seija Kijin <doremylover123@xxxxxxxxx> strncmp does not modify any of the memory, so looping through all elements is a waste of resources. Signed-off-by: Seija Kijin <doremylover123@xxxxxxxxx> --- merge: break out of all_strategy loop when strategy is found strncmp does not modify any of the memory, so looping through all elements is a waste of resources. Signed-off-by: Seija Kijin doremylover123@xxxxxxxxx Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-git-1429%2FAtariDreams%2Fexit-v1 Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-git-1429/AtariDreams/exit-v1 Pull-Request: https://github.com/git/git/pull/1429 builtin/merge.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/builtin/merge.c b/builtin/merge.c index 0f093f2a4f2..5ab0feb47b6 100644 --- a/builtin/merge.c +++ b/builtin/merge.c @@ -189,9 +189,12 @@ static struct strategy *get_strategy(const char *name) int j, found = 0; struct cmdname *ent = main_cmds.names[i]; for (j = 0; j < ARRAY_SIZE(all_strategy); j++) - if (!strncmp(ent->name, all_strategy[j].name, ent->len) - && !all_strategy[j].name[ent->len]) + if (!strncmp(ent->name, all_strategy[j].name, + ent->len) && + !all_strategy[j].name[ent->len]) { found = 1; + break; + } if (!found) add_cmdname(¬_strategies, ent->name, ent->len); } base-commit: a38d39a4c50d1275833aba54c4dbdfce9e2e9ca1 -- gitgitgadget