struct dirent *de;
int baselen = strlen(base);
char *path = xmalloc(baselen + 257);
+
+ if (!strncmp(base, "./", 2)) {
+ base += 2;
+ baselen -= 2;
+ }
memcpy(path, base, baselen);
if (baselen && base[baselen-1] != '/')
path[baselen++] = '/';
return retval;
}
+int head_ref(int (*fn)(const char *path, const unsigned char *sha1))
+{
+ unsigned char sha1[20];
+ const char *headpath = git_path("HEAD");
+ if (!read_ref(headpath, sha1))
+ fn(headpath, sha1);
+ return do_for_each_ref(get_refs_directory(), fn);
+}
+
int for_each_ref(int (*fn)(const char *path, const unsigned char *sha1))
{
return do_for_each_ref(get_refs_directory(), fn);