From mboxrd@z Thu Jan 1 00:00:00 1970 From: cgit at cryptocrack.de (Lukas Fleischer) Date: Fri, 10 Jan 2014 14:55:30 +0100 Subject: [PATCH 1/2] cgit.c: Use "else" for mutually exclusive branches Message-ID: <1389362131-13202-1-git-send-email-cgit@cryptocrack.de> When parsing command line arguments, no pair of command line options can ever match simultaneously. Use "else if" blocks to reflect this. This change improves both readability and speed. Signed-off-by: Lukas Fleischer --- Based on the patches I sent earlier today. cgit.c | 29 ++++++++++------------------- 1 file changed, 10 insertions(+), 19 deletions(-) diff --git a/cgit.c b/cgit.c index e31962d..f4262d8 100644 --- a/cgit.c +++ b/cgit.c @@ -865,35 +865,26 @@ static void cgit_parse_args(int argc, const char **argv) for (i = 1; i < argc; i++) { if (!prefixcmp(argv[i], "--cache=")) { ctx.cfg.cache_root = xstrdup(argv[i] + 8); - } - if (!strcmp(argv[i], "--nocache")) { + } else if (!strcmp(argv[i], "--nocache")) { ctx.cfg.nocache = 1; - } - if (!strcmp(argv[i], "--nohttp")) { + } else if (!strcmp(argv[i], "--nohttp")) { ctx.env.no_http = "1"; - } - if (!prefixcmp(argv[i], "--query=")) { + } else if (!prefixcmp(argv[i], "--query=")) { ctx.qry.raw = xstrdup(argv[i] + 8); - } - if (!prefixcmp(argv[i], "--repo=")) { + } else if (!prefixcmp(argv[i], "--repo=")) { ctx.qry.repo = xstrdup(argv[i] + 7); - } - if (!prefixcmp(argv[i], "--page=")) { + } else if (!prefixcmp(argv[i], "--page=")) { ctx.qry.page = xstrdup(argv[i] + 7); - } - if (!prefixcmp(argv[i], "--head=")) { + } else if (!prefixcmp(argv[i], "--head=")) { ctx.qry.head = xstrdup(argv[i] + 7); ctx.qry.has_symref = 1; - } - if (!prefixcmp(argv[i], "--sha1=")) { + } else if (!prefixcmp(argv[i], "--sha1=")) { ctx.qry.sha1 = xstrdup(argv[i] + 7); ctx.qry.has_sha1 = 1; - } - if (!prefixcmp(argv[i], "--ofs=")) { + } else if (!prefixcmp(argv[i], "--ofs=")) { ctx.qry.ofs = atoi(argv[i] + 6); - } - if (!prefixcmp(argv[i], "--scan-tree=") || - !prefixcmp(argv[i], "--scan-path=")) { + } else if (!prefixcmp(argv[i], "--scan-tree=") || + !prefixcmp(argv[i], "--scan-path=")) { /* HACK: the global snapshot bitmask defines the * set of allowed snapshot formats, but the config * file hasn't been parsed yet so the mask is -- 1.8.5.2