Now that resolve_packed_ref() can work with an arbitrary
files_ref_store, there is no need to have a separate
resolve_gitlink_packed_ref() function.

Signed-off-by: Michael Haggerty <mhag...@alum.mit.edu>
Signed-off-by: Junio C Hamano <gits...@pobox.com>
---
 refs/files-backend.c | 26 +++++---------------------
 1 file changed, 5 insertions(+), 21 deletions(-)

diff --git a/refs/files-backend.c b/refs/files-backend.c
index 32ca5ff..3b0c837 100644
--- a/refs/files-backend.c
+++ b/refs/files-backend.c
@@ -1490,25 +1490,6 @@ static void unlock_ref(struct ref_lock *lock)
 
 #define MAXREFLEN (1024)
 
-/*
- * Called by resolve_gitlink_ref_recursive() after it failed to read
- * from the loose refs in refs. Find <refname> in the packed-refs file
- * for the submodule.
- */
-static int resolve_gitlink_packed_ref(struct files_ref_store *refs,
-                                     const char *refname, unsigned char *sha1)
-{
-       struct ref_entry *ref;
-       struct ref_dir *dir = get_packed_refs(refs);
-
-       ref = find_ref(dir, refname);
-       if (ref == NULL)
-               return -1;
-
-       hashcpy(sha1, ref->u.value.oid.hash);
-       return 0;
-}
-
 static int resolve_gitlink_ref_recursive(struct files_ref_store *refs,
                                         const char *refname, unsigned char 
*sha1,
                                         int recursion)
@@ -1524,8 +1505,11 @@ static int resolve_gitlink_ref_recursive(struct 
files_ref_store *refs,
                : git_pathdup("%s", refname);
        fd = open(path, O_RDONLY);
        free(path);
-       if (fd < 0)
-               return resolve_gitlink_packed_ref(refs, refname, sha1);
+       if (fd < 0) {
+               unsigned int flags;
+
+               return resolve_packed_ref(refs, refname, sha1, &flags);
+       }
 
        len = read(fd, buffer, sizeof(buffer)-1);
        close(fd);
-- 
2.9.3

Reply via email to