X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=object.c;h=7e6a92c88e7b139ec03e0ff26e97e1559a06a220;hb=7ee3760e2c8f181f22d4b80afc03309e4f764385;hp=50b6528001fe4bafdfe70126dc2078860c3d1969;hpb=5fc3e67ac0241c491dcf1c0c9dcd4a4d83e7c243;p=git.git diff --git a/object.c b/object.c index 50b652800..7e6a92c88 100644 --- a/object.c +++ b/object.c @@ -268,3 +268,22 @@ void add_object_array_with_mode(struct object *obj, const char *name, struct obj objects[nr].mode = mode; array->nr = ++nr; } + +void object_array_remove_duplicates(struct object_array *array) +{ + int ref, src, dst; + struct object_array_entry *objects = array->objects; + + for (ref = 0; ref < array->nr - 1; ref++) { + for (src = ref + 1, dst = src; + src < array->nr; + src++) { + if (!strcmp(objects[ref].name, objects[src].name)) + continue; + if (src != dst) + objects[dst] = objects[src]; + dst++; + } + array->nr = dst; + } +}