>From adfcfa0a334378a6242347efc0d614fa193610db Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pawe=C5=82=20Wawruch?= <pawlo@xxxxxxx> Date: Thu, 6 Mar 2014 00:05:00 +0100 Subject: [PATCH] branch.c:install_branch_config(): Simplify the long chain of if statements. Threre was a long chain of if statements. The code can be more clear. The chain is replaced with table of strings. New approach is more compact. --- branch.c | 38 ++++++++++++++++---------------------- 1 file changed, 16 insertions(+), 22 deletions(-) diff --git a/branch.c b/branch.c index 723a36b..ebc2172 100644 --- a/branch.c +++ b/branch.c @@ -77,29 +77,23 @@ void install_branch_config(int flag, const char *local, const char *origin, cons strbuf_release(&key); if (flag & BRANCH_CONFIG_VERBOSE) { - if (remote_is_branch && origin) - printf_ln(rebasing ? - _("Branch %s set up to track remote branch %s from %s by rebasing.") : - _("Branch %s set up to track remote branch %s from %s."), - local, shortname, origin); - else if (remote_is_branch && !origin) - printf_ln(rebasing ? - _("Branch %s set up to track local branch %s by rebasing.") : - _("Branch %s set up to track local branch %s."), - local, shortname); - else if (!remote_is_branch && origin) - printf_ln(rebasing ? - _("Branch %s set up to track remote ref %s by rebasing.") : - _("Branch %s set up to track remote ref %s."), - local, remote); - else if (!remote_is_branch && !origin) - printf_ln(rebasing ? - _("Branch %s set up to track local ref %s by rebasing.") : - _("Branch %s set up to track local ref %s."), - local, remote); + const char *messages[8] ; + messages[0] = _("Branch %s set up to track remote branch %s from %s by rebasing."); + messages[1] = _("Branch %s set up to track remote branch %s from %s."); + messages[2] = _("Branch %s set up to track local branch %s by rebasing."); + messages[3] = _("Branch %s set up to track local branch %s."); + messages[4] = _("Branch %s set up to track remote ref %s by rebasing."); + messages[5] = _("Branch %s set up to track remote ref %s."); + messages[6] = _("Branch %s set up to track local ref %s by rebasing."); + messages[7] = _("Branch %s set up to track local ref %s."); + + const char *name = remote_is_branch ? remote : shortname; + int message_number = rebasing + 2 * (origin != NULL) + 4 * remote_is_branch; + + if (message_number < 2) + printf_ln(messages[message_number], local, name, origin); else - die("BUG: impossible combination of %d and %p", - remote_is_branch, origin); + printf_ln(messages[message_number], local, name); } } -- 1.8.3.2 -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html