X-Git-Url: https://asedeno.scripts.mit.edu/gitweb/?a=blobdiff_plain;f=builtin-check-attr.c;h=6afdfa10a166a97c1115b1430221262228622c5c;hb=a41acc63badf20cbb22cca61039dca9309deaa19;hp=634be9ed2e4a28b0c3a53d8724bacbd3094b369d;hpb=e4aee10a2eaf0937d86d046f85ee569a75cae9ac;p=git.git diff --git a/builtin-check-attr.c b/builtin-check-attr.c index 634be9ed2..6afdfa10a 100644 --- a/builtin-check-attr.c +++ b/builtin-check-attr.c @@ -1,4 +1,5 @@ #include "builtin.h" +#include "cache.h" #include "attr.h" #include "quote.h" @@ -10,6 +11,10 @@ int cmd_check_attr(int argc, const char **argv, const char *prefix) struct git_attr_check *check; int cnt, i, doubledash; + if (read_cache() < 0) { + die("invalid cache"); + } + doubledash = -1; for (i = 1; doubledash < 0 && i < argc; i++) { if (!strcmp(argv[i], "--")) @@ -42,11 +47,17 @@ int cmd_check_attr(int argc, const char **argv, const char *prefix) if (git_checkattr(argv[i], cnt, check)) die("git_checkattr died"); for (j = 0; j < cnt; j++) { - write_name_quoted("", 0, argv[i], 1, stdout); - printf(": %s: %s\n", argv[j+1], - (check[j].isset < 0) ? "unspecified" : - (check[j].isset == 0) ? "unset" : - "set"); + const char *value = check[j].value; + + if (ATTR_TRUE(value)) + value = "set"; + else if (ATTR_FALSE(value)) + value = "unset"; + else if (ATTR_UNSET(value)) + value = "unspecified"; + + quote_c_style(argv[i], NULL, stdout, 0); + printf(": %s: %s\n", argv[j+1], value); } } return 0;