diff options
author | Rohit Mani <rohit.mani@outlook.com> | 2014-03-07 22:48:31 -0800 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2014-03-10 08:35:30 -0700 |
commit | 2c5495f7b60d6ddcd6a411b48d2f6dbc4a24717a (patch) | |
tree | 9900454e2b547e2fee8e9e67b39ced68ea0c650e /diff.c | |
parent | 5f95c9f850b19b368c43ae399cc831b17a26a5ac (diff) | |
download | git-2c5495f7b60d6ddcd6a411b48d2f6dbc4a24717a.tar.gz |
use strchrnul() in place of strchr() and strlen()rm/strchrnul-not-strlen
Avoid scanning strings twice, once with strchr() and then with
strlen(), by using strchrnul().
Helped-by: Junio C Hamano <gitster@pobox.com>
Signed-off-by: Rohit Mani <rohit.mani@outlook.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'diff.c')
-rw-r--r-- | diff.c | 9 |
1 files changed, 3 insertions, 6 deletions
@@ -3365,14 +3365,11 @@ static int opt_arg(const char *arg, int arg_short, const char *arg_long, int *va if (c != '-') return 0; arg++; - eq = strchr(arg, '='); - if (eq) - len = eq - arg; - else - len = strlen(arg); + eq = strchrnul(arg, '='); + len = eq - arg; if (!len || strncmp(arg, arg_long, len)) return 0; - if (eq) { + if (*eq) { int n; char *end; if (!isdigit(*++eq)) |