From b2be2f6aeaa8f4af602679e5571d2e916a259d91 Mon Sep 17 00:00:00 2001 From: Jeff King Date: Wed, 17 Nov 2010 12:00:45 -0500 Subject: log.decorate: accept 0/1 bool values We explicitly document "0" and "1" as synonyms for "false" and "true" in boolean config options. However, we don't actually handle those values in git_config_maybe_bool. In most cases this works fine, as we call git_config_bool, which in turn calls git_config_bool_or_int, which in turn calls git_config_maybe_bool. Values of 0/1 are considered "not bool", but their integer values end up being converted to the corresponding boolean values. However, the log.decorate code looks for maybe_bool explicitly, so that it can fall back to the "short" and "full" strings. It does not handle 0/1 at all, and considers them invalid values. We cannot simply add 0/1 support to git_config_maybe_bool. That would confuse git_config_bool_or_int, which may want to distinguish the integer values "0" and "1" from bools. Signed-off-by: Jeff King Signed-off-by: Junio C Hamano --- t/t4202-log.sh | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 't/t4202-log.sh') diff --git a/t/t4202-log.sh b/t/t4202-log.sh index 2e51356947..2043bb8867 100755 --- a/t/t4202-log.sh +++ b/t/t4202-log.sh @@ -421,6 +421,15 @@ test_expect_success 'log.decorate configuration' ' git log --oneline --decorate=full >actual && test_cmp expect.full actual && + git config --unset-all log.decorate && + git config log.decorate 1 && + git log --oneline >actual && + test_cmp expect.short actual && + git log --oneline --decorate=full >actual && + test_cmp expect.full actual && + git log --oneline --decorate=no >actual && + test_cmp expect.none actual && + git config --unset-all log.decorate && git config log.decorate short && git log --oneline >actual && -- cgit v1.2.1