summaryrefslogtreecommitdiff
path: root/convert.c
diff options
context:
space:
mode:
authorJunio C Hamano <junkio@cox.net>2007-04-18 23:16:37 (GMT)
committerJunio C Hamano <junkio@cox.net>2007-04-18 23:17:13 (GMT)
commita5e92abde61d59a8612c5b87d0bae681e90f7fdb (patch)
treee53fefb050e87cb63d06d016ffec73e2a67f2bf2 /convert.c
parent3086486d326b00ce308208e62e0e0de831f3563b (diff)
downloadgit-a5e92abde61d59a8612c5b87d0bae681e90f7fdb.zip
git-a5e92abde61d59a8612c5b87d0bae681e90f7fdb.tar.gz
git-a5e92abde61d59a8612c5b87d0bae681e90f7fdb.tar.bz2
Fix funny types used in attribute value representation
It was bothering me a lot that I abused small integer values casted to (void *) to represent non string values in gitattributes. This corrects it by making the type of attribute values (const char *), and using the address of a few statically allocated character buffer to denote true/false. Unset attributes are represented as having NULLs as their values. Added in-header documentation to explain how git_checkattr() routine should be called. Signed-off-by: Junio C Hamano <junkio@cox.net>
Diffstat (limited to 'convert.c')
-rw-r--r--convert.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/convert.c b/convert.c
index 68bb70f..a5f60c7 100644
--- a/convert.c
+++ b/convert.c
@@ -226,7 +226,7 @@ static int git_path_check_crlf(const char *path)
setup_crlf_check(&attr_crlf_check);
if (!git_checkattr(path, 1, &attr_crlf_check)) {
- void *value = attr_crlf_check.value;
+ const char *value = attr_crlf_check.value;
if (ATTR_TRUE(value))
return 1;
else if (ATTR_FALSE(value))