1 /*
2  * Copyright (C) the libgit2 contributors. All rights reserved.
3  *
4  * This file is part of libgit2, distributed under the GNU GPL v2 with
5  * a Linking Exception. For full terms see the included COPYING file.
6  */
7 
8 #include "oidarray.h"
9 
10 #include "git2/oidarray.h"
11 #include "array.h"
12 
git_oidarray_free(git_oidarray * arr)13 void git_oidarray_free(git_oidarray *arr)
14 {
15 	git__free(arr->ids);
16 }
17 
git_oidarray__from_array(git_oidarray * arr,git_array_oid_t * array)18 void git_oidarray__from_array(git_oidarray *arr, git_array_oid_t *array)
19 {
20 	arr->count = array->size;
21 	arr->ids = array->ptr;
22 }
23 
git_oidarray__reverse(git_oidarray * arr)24 void git_oidarray__reverse(git_oidarray *arr)
25 {
26 	size_t i;
27 	git_oid tmp;
28 
29 	for (i = 0; i < arr->count / 2; i++) {
30 		git_oid_cpy(&tmp, &arr->ids[i]);
31 		git_oid_cpy(&arr->ids[i], &arr->ids[(arr->count-1)-i]);
32 		git_oid_cpy(&arr->ids[(arr->count-1)-i], &tmp);
33 	}
34 }
35