@@ -502,7 +502,9 @@ struct dir_state {
502502 struct object_id oid ;
503503};
504504
505- static int find_tree_entry (struct tree_desc * t , const char * name , struct object_id * result , unsigned short * mode )
505+ static int find_tree_entry (struct repository * r , struct tree_desc * t ,
506+ const char * name , struct object_id * result ,
507+ unsigned short * mode )
506508{
507509 int namelen = strlen (name );
508510 while (t -> size ) {
@@ -532,19 +534,23 @@ static int find_tree_entry(struct tree_desc *t, const char *name, struct object_
532534 oidcpy (result , & oid );
533535 return 0 ;
534536 }
535- return get_tree_entry (& oid , name + entrylen , result , mode );
537+ return get_tree_entry (r , & oid , name + entrylen , result , mode );
536538 }
537539 return -1 ;
538540}
539541
540- int get_tree_entry (const struct object_id * tree_oid , const char * name , struct object_id * oid , unsigned short * mode )
542+ int get_tree_entry (struct repository * r ,
543+ const struct object_id * tree_oid ,
544+ const char * name ,
545+ struct object_id * oid ,
546+ unsigned short * mode )
541547{
542548 int retval ;
543549 void * tree ;
544550 unsigned long size ;
545551 struct object_id root ;
546552
547- tree = read_object_with_reference (the_repository , tree_oid , tree_type , & size , & root );
553+ tree = read_object_with_reference (r , tree_oid , tree_type , & size , & root );
548554 if (!tree )
549555 return -1 ;
550556
@@ -559,7 +565,7 @@ int get_tree_entry(const struct object_id *tree_oid, const char *name, struct ob
559565 } else {
560566 struct tree_desc t ;
561567 init_tree_desc (& t , tree , size );
562- retval = find_tree_entry (& t , name , oid , mode );
568+ retval = find_tree_entry (r , & t , name , oid , mode );
563569 }
564570 free (tree );
565571 return retval ;
@@ -681,7 +687,7 @@ enum get_oid_result get_tree_entry_follow_symlinks(struct object_id *tree_oid, c
681687 }
682688
683689 /* Look up the first (or only) path component in the tree. */
684- find_result = find_tree_entry (& t , namebuf .buf ,
690+ find_result = find_tree_entry (the_repository , & t , namebuf .buf ,
685691 & current_tree_oid , mode );
686692 if (find_result ) {
687693 goto done ;
0 commit comments