summaryrefslogtreecommitdiff
path: root/tests/refs/ref_helpers.c
blob: 7676e65a79a8171523aa7ec8457647354a83db0e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include "git2/repository.h"
#include "git2/refs.h"
#include "common.h"
#include "util.h"
#include "buffer.h"
#include "path.h"

int reference_is_packed(git_reference *ref)
{
	git_buf ref_path = GIT_BUF_INIT;
	int packed;

	assert(ref);

	if (git_buf_joinpath(&ref_path,
		git_repository_path(git_reference_owner(ref)),
		git_reference_name(ref)) < 0)
		return -1;

	packed = !git_path_isfile(ref_path.ptr);

	git_buf_free(&ref_path);

	return packed;
}