summaryrefslogtreecommitdiff
path: root/attr.c
diff options
context:
space:
mode:
authorJeff King <peff@peff.net>2012-01-10 14:32:06 -0500
committerJunio C Hamano <gitster@pobox.com>2012-01-10 11:55:27 -0800
commit77f7f822889411bfede0507dd60aebf11edb2849 (patch)
tree2c9f914b6686a81ff26ee3a5368cd4cf72d27be3 /attr.c
parent1afca444953639fef53f3e5520202971505d77b9 (diff)
downloadgit-77f7f822889411bfede0507dd60aebf11edb2849.tar.gz
attr: drop misguided defensive coding
In prepare_attr_stack, we pop the old elements of the stack (which were left from a previous lookup and may or may not be useful to us). Our loop to do so checks that we never reach the top of the stack. However, the code immediately afterwards will segfault if we did actually reach the top of the stack. Fortunately, this is not an actual bug, since we will never pop all of the stack elements (we will always keep the root gitattributes, as well as the builtin ones). So the extra check in the loop condition simply clutters the code and makes the intent less clear. Let's get rid of it. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'attr.c')
-rw-r--r--attr.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/attr.c b/attr.c
index 924b4408d5..ad7eb9cd31 100644
--- a/attr.c
+++ b/attr.c
@@ -568,7 +568,7 @@ static void prepare_attr_stack(const char *path, int dirlen)
* Pop the ones from directories that are not the prefix of
* the path we are checking.
*/
- while (attr_stack && attr_stack->origin) {
+ while (attr_stack->origin) {
int namelen = strlen(attr_stack->origin);
elem = attr_stack;