summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeff King <peff@peff.net>2015-01-20 17:14:48 -0500
committerJunio C Hamano <gitster@pobox.com>2015-01-20 15:56:03 -0800
commit3759d27aca3ddd78b4b1169a767809748dc1fc3f (patch)
tree731e77e963a86dec0dced2086c7e0c1439b827f5
parent71b59849753589c3faa04176e875071417ceddd5 (diff)
downloadgit-3759d27aca3ddd78b4b1169a767809748dc1fc3f.tar.gz
parse_color: fix return value for numeric color values 0-8
When commit 695d95d refactored the color parsing, it missed a "return 0" when parsing literal numbers 0-8 (which represent basic ANSI colors), leading us to report these colors as an error. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r--color.c1
-rwxr-xr-xt/t4026-color.sh4
2 files changed, 5 insertions, 0 deletions
diff --git a/color.c b/color.c
index 809b359a42..9027352ad7 100644
--- a/color.c
+++ b/color.c
@@ -112,6 +112,7 @@ static int parse_color(struct color *out, const char *name, int len)
} else if (val < 8) {
out->type = COLOR_ANSI;
out->value = val;
+ return 0;
} else if (val < 256) {
out->type = COLOR_256;
out->value = val;
diff --git a/t/t4026-color.sh b/t/t4026-color.sh
index 267c43bd95..4d20feacfe 100755
--- a/t/t4026-color.sh
+++ b/t/t4026-color.sh
@@ -60,6 +60,10 @@ test_expect_success 'absurdly long color specification' '
"[1;2;4;5;7;22;24;25;27;38;2;255;255;255;48;2;255;255;255m"
'
+test_expect_success '0-7 are aliases for basic ANSI color names' '
+ color "0 7" "[30;47m"
+'
+
test_expect_success '256 colors' '
color "254 bold 255" "[1;38;5;254;48;5;255m"
'