tree-walk.c: remove the_repo from get_tree_entry_follow_symlinks()
Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
committed by
Junio C Hamano
parent
50ddb089ff
commit
0dd1f0c3a6
10
sha1-name.c
10
sha1-name.c
@@ -1890,16 +1890,8 @@ static enum get_oid_result get_oid_with_context_1(struct repository *repo,
|
|||||||
new_filename = resolve_relative_path(repo, filename);
|
new_filename = resolve_relative_path(repo, filename);
|
||||||
if (new_filename)
|
if (new_filename)
|
||||||
filename = new_filename;
|
filename = new_filename;
|
||||||
/*
|
|
||||||
* NEEDSWORK: Eventually get_tree_entry*() should
|
|
||||||
* learn to take struct repository directly and we
|
|
||||||
* would not need to inject submodule odb to the
|
|
||||||
* in-core odb.
|
|
||||||
*/
|
|
||||||
if (repo != the_repository)
|
|
||||||
add_to_alternates_memory(repo->objects->odb->path);
|
|
||||||
if (flags & GET_OID_FOLLOW_SYMLINKS) {
|
if (flags & GET_OID_FOLLOW_SYMLINKS) {
|
||||||
ret = get_tree_entry_follow_symlinks(&tree_oid,
|
ret = get_tree_entry_follow_symlinks(repo, &tree_oid,
|
||||||
filename, oid, &oc->symlink_path,
|
filename, oid, &oc->symlink_path,
|
||||||
&oc->mode);
|
&oc->mode);
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
12
tree-walk.c
12
tree-walk.c
@@ -593,7 +593,10 @@ int get_tree_entry(struct repository *r,
|
|||||||
* See the code for enum get_oid_result for a description of
|
* See the code for enum get_oid_result for a description of
|
||||||
* the return values.
|
* the return values.
|
||||||
*/
|
*/
|
||||||
enum get_oid_result get_tree_entry_follow_symlinks(struct object_id *tree_oid, const char *name, struct object_id *result, struct strbuf *result_path, unsigned short *mode)
|
enum get_oid_result get_tree_entry_follow_symlinks(struct repository *r,
|
||||||
|
struct object_id *tree_oid, const char *name,
|
||||||
|
struct object_id *result, struct strbuf *result_path,
|
||||||
|
unsigned short *mode)
|
||||||
{
|
{
|
||||||
int retval = MISSING_OBJECT;
|
int retval = MISSING_OBJECT;
|
||||||
struct dir_state *parents = NULL;
|
struct dir_state *parents = NULL;
|
||||||
@@ -617,7 +620,7 @@ enum get_oid_result get_tree_entry_follow_symlinks(struct object_id *tree_oid, c
|
|||||||
void *tree;
|
void *tree;
|
||||||
struct object_id root;
|
struct object_id root;
|
||||||
unsigned long size;
|
unsigned long size;
|
||||||
tree = read_object_with_reference(the_repository,
|
tree = read_object_with_reference(r,
|
||||||
¤t_tree_oid,
|
¤t_tree_oid,
|
||||||
tree_type, &size,
|
tree_type, &size,
|
||||||
&root);
|
&root);
|
||||||
@@ -687,7 +690,7 @@ enum get_oid_result get_tree_entry_follow_symlinks(struct object_id *tree_oid, c
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* Look up the first (or only) path component in the tree. */
|
/* Look up the first (or only) path component in the tree. */
|
||||||
find_result = find_tree_entry(the_repository, &t, namebuf.buf,
|
find_result = find_tree_entry(r, &t, namebuf.buf,
|
||||||
¤t_tree_oid, mode);
|
¤t_tree_oid, mode);
|
||||||
if (find_result) {
|
if (find_result) {
|
||||||
goto done;
|
goto done;
|
||||||
@@ -731,7 +734,8 @@ enum get_oid_result get_tree_entry_follow_symlinks(struct object_id *tree_oid, c
|
|||||||
*/
|
*/
|
||||||
retval = DANGLING_SYMLINK;
|
retval = DANGLING_SYMLINK;
|
||||||
|
|
||||||
contents = read_object_file(¤t_tree_oid, &type,
|
contents = repo_read_object_file(r,
|
||||||
|
¤t_tree_oid, &type,
|
||||||
&link_len);
|
&link_len);
|
||||||
|
|
||||||
if (!contents)
|
if (!contents)
|
||||||
|
|||||||
@@ -53,7 +53,7 @@ struct traverse_info;
|
|||||||
typedef int (*traverse_callback_t)(int n, unsigned long mask, unsigned long dirmask, struct name_entry *entry, struct traverse_info *);
|
typedef int (*traverse_callback_t)(int n, unsigned long mask, unsigned long dirmask, struct name_entry *entry, struct traverse_info *);
|
||||||
int traverse_trees(struct index_state *istate, int n, struct tree_desc *t, struct traverse_info *info);
|
int traverse_trees(struct index_state *istate, int n, struct tree_desc *t, struct traverse_info *info);
|
||||||
|
|
||||||
enum get_oid_result get_tree_entry_follow_symlinks(struct object_id *tree_oid, const char *name, struct object_id *result, struct strbuf *result_path, unsigned short *mode);
|
enum get_oid_result get_tree_entry_follow_symlinks(struct repository *r, struct object_id *tree_oid, const char *name, struct object_id *result, struct strbuf *result_path, unsigned short *mode);
|
||||||
|
|
||||||
struct traverse_info {
|
struct traverse_info {
|
||||||
const char *traverse_path;
|
const char *traverse_path;
|
||||||
|
|||||||
Reference in New Issue
Block a user