diff options
author | Martin Koegler <mkoegler@auto.tuwien.ac.at> | 2007-04-22 18:43:58 +0200 |
---|---|---|
committer | Junio C Hamano <junkio@cox.net> | 2007-04-24 00:08:49 -0700 |
commit | e5709a4a6809e45bf59b851debf24a813e1c6b58 (patch) | |
tree | 6a86e480804869637f7e176eca64c356840f5374 | |
parent | a0cd87a57044efa8aef39b476fd9240af57a1853 (diff) | |
download | git-e5709a4a6809e45bf59b851debf24a813e1c6b58.tar.gz |
add add_object_array_with_mode
Each object in struct object_array is extended with the mode.
If not specified, S_IFINVALID is used. An object with an mode value
can be added with add_object_array_with_mode.
Signed-off-by: Martin Koegler <mkoegler@auto.tuwien.ac.at>
Signed-off-by: Junio C Hamano <junkio@cox.net>
-rw-r--r-- | object.c | 6 | ||||
-rw-r--r-- | object.h | 2 |
2 files changed, 8 insertions, 0 deletions
@@ -231,6 +231,11 @@ int object_list_contains(struct object_list *list, struct object *obj) void add_object_array(struct object *obj, const char *name, struct object_array *array) { + add_object_array_with_mode(obj, name, array, S_IFINVALID); +} + +void add_object_array_with_mode(struct object *obj, const char *name, struct object_array *array, unsigned mode) +{ unsigned nr = array->nr; unsigned alloc = array->alloc; struct object_array_entry *objects = array->objects; @@ -243,5 +248,6 @@ void add_object_array(struct object *obj, const char *name, struct object_array } objects[nr].item = obj; objects[nr].name = name; + objects[nr].mode = mode; array->nr = ++nr; } @@ -17,6 +17,7 @@ struct object_array { struct object_array_entry { struct object *item; const char *name; + unsigned mode; } *objects; }; @@ -77,5 +78,6 @@ int object_list_contains(struct object_list *list, struct object *obj); /* Object array handling .. */ void add_object_array(struct object *obj, const char *name, struct object_array *array); +void add_object_array_with_mode(struct object *obj, const char *name, struct object_array *array, unsigned mode); #endif /* OBJECT_H */ |