grep: plug a trivial memory leak
[gitweb.git] / attr.h
diff --git a/attr.h b/attr.h
index 898e1a8c9987cc5ae776a44aa2c8befcb8e262f8..48ab3e1c2f1c3eaf11e32f345fc833fc160c5b02 100644 (file)
--- a/attr.h
+++ b/attr.h
@@ -4,11 +4,15 @@
 /* An attribute is a pointer to this opaque structure */
 struct git_attr;
 
+/* opaque structures used internally for attribute collection */
+struct all_attrs_item;
+struct attr_stack;
+
 /*
  * Given a string, return the gitattribute object that
  * corresponds to it.
  */
-struct git_attr *git_attr(const char *);
+const struct git_attr *git_attr(const char *);
 
 /* Internal use */
 extern const char git_attr__true[];
@@ -33,6 +37,9 @@ struct attr_check {
        int nr;
        int alloc;
        struct attr_check_item *items;
+       int all_attrs_nr;
+       struct all_attrs_item *all_attrs;
+       struct attr_stack *stack;
 };
 
 extern struct attr_check *attr_check_alloc(void);
@@ -65,7 +72,8 @@ enum git_attr_direction {
        GIT_ATTR_CHECKOUT,
        GIT_ATTR_INDEX
 };
-void git_attr_set_direction(enum git_attr_direction, struct index_state *);
+void git_attr_set_direction(enum git_attr_direction new_direction,
+                           struct index_state *istate);
 
 extern void attr_start(void);