git-svn: prevent dcommitting if the index is dirty.
[gitweb.git] / builtin-check-attr.c
index 6983a73c1b387e5eb4a0c8dbc6b9e72b93735245..d94973379cee27c47426b61a13ae0f90508fed9b 100644 (file)
@@ -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,7 +47,7 @@ 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++) {
-                       void *value = check[j].value;
+                       const char *value = check[j].value;
 
                        if (ATTR_TRUE(value))
                                value = "set";
@@ -52,7 +57,7 @@ int cmd_check_attr(int argc, const char **argv, const char *prefix)
                                value = "unspecified";
 
                        write_name_quoted("", 0, argv[i], 1, stdout);
-                       printf(": %s: %s\n", argv[j+1], (char *) value);
+                       printf(": %s: %s\n", argv[j+1], value);
                }
        }
        return 0;