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@xxxxxxxxxxxxxxxxx> --- object.c | 6 ++++++ object.h | 2 ++ 2 files changed, 8 insertions(+), 0 deletions(-) diff --git a/object.c b/object.c index 78a44a6..fcf06bd 100644 --- a/object.c +++ b/object.c @@ -240,6 +240,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; @@ -252,5 +257,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; } diff --git a/object.h b/object.h index bdbbc18..d0b5298 100644 --- a/object.h +++ b/object.h @@ -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 */ -- 1.5.1.1.206.g4a12-dirty - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html