From: "Nguyễn Thái Ngọc Duy" <pclouds@gmail.com>
To: git@vger.kernel.org
Cc: "Junio C Hamano" <gitster@pobox.com>,
"Nguyễn Thái Ngọc Duy" <pclouds@gmail.com>
Subject: [PATCH 5/6] match-trees.c: remove the_repo from shift_tree*()
Date: Mon, 24 Jun 2019 16:55:32 +0700 [thread overview]
Message-ID: <20190624095533.22162-6-pclouds@gmail.com> (raw)
In-Reply-To: <20190624095533.22162-1-pclouds@gmail.com>
Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
---
cache.h | 4 ++--
match-trees.c | 12 +++++++-----
merge-recursive.c | 4 ++--
t/helper/test-match-trees.c | 2 +-
4 files changed, 12 insertions(+), 10 deletions(-)
diff --git a/cache.h b/cache.h
index cd84cc9bbe..ddefda2bb6 100644
--- a/cache.h
+++ b/cache.h
@@ -1786,8 +1786,8 @@ int add_files_to_cache(const char *prefix, const struct pathspec *pathspec, int
extern int diff_auto_refresh_index;
/* match-trees.c */
-void shift_tree(const struct object_id *, const struct object_id *, struct object_id *, int);
-void shift_tree_by(const struct object_id *, const struct object_id *, struct object_id *, const char *);
+void shift_tree(struct repository *, const struct object_id *, const struct object_id *, struct object_id *, int);
+void shift_tree_by(struct repository *, const struct object_id *, const struct object_id *, struct object_id *, const char *);
/*
* whitespace rules.
diff --git a/match-trees.c b/match-trees.c
index de7e8a6783..f6c194c1cc 100644
--- a/match-trees.c
+++ b/match-trees.c
@@ -248,7 +248,8 @@ static int splice_tree(const struct object_id *oid1, const char *prefix,
* other hand, it could cover tree one and we might need to pick a
* subtree of it.
*/
-void shift_tree(const struct object_id *hash1,
+void shift_tree(struct repository *r,
+ const struct object_id *hash1,
const struct object_id *hash2,
struct object_id *shifted,
int depth_limit)
@@ -290,7 +291,7 @@ void shift_tree(const struct object_id *hash1,
if (!*del_prefix)
return;
- if (get_tree_entry(the_repository, hash2, del_prefix, shifted, &mode))
+ if (get_tree_entry(r, hash2, del_prefix, shifted, &mode))
die("cannot find path %s in tree %s",
del_prefix, oid_to_hex(hash2));
return;
@@ -307,7 +308,8 @@ void shift_tree(const struct object_id *hash1,
* Unfortunately we cannot fundamentally tell which one to
* be prefixed, as recursive merge can work in either direction.
*/
-void shift_tree_by(const struct object_id *hash1,
+void shift_tree_by(struct repository *r,
+ const struct object_id *hash1,
const struct object_id *hash2,
struct object_id *shifted,
const char *shift_prefix)
@@ -317,12 +319,12 @@ void shift_tree_by(const struct object_id *hash1,
unsigned candidate = 0;
/* Can hash2 be a tree at shift_prefix in tree hash1? */
- if (!get_tree_entry(the_repository, hash1, shift_prefix, &sub1, &mode1) &&
+ if (!get_tree_entry(r, hash1, shift_prefix, &sub1, &mode1) &&
S_ISDIR(mode1))
candidate |= 1;
/* Can hash1 be a tree at shift_prefix in tree hash2? */
- if (!get_tree_entry(the_repository, hash2, shift_prefix, &sub2, &mode2) &&
+ if (!get_tree_entry(r, hash2, shift_prefix, &sub2, &mode2) &&
S_ISDIR(mode2))
candidate |= 2;
diff --git a/merge-recursive.c b/merge-recursive.c
index b051066795..6d772eb0eb 100644
--- a/merge-recursive.c
+++ b/merge-recursive.c
@@ -153,9 +153,9 @@ static struct tree *shift_tree_object(struct repository *repo,
struct object_id shifted;
if (!*subtree_shift) {
- shift_tree(&one->object.oid, &two->object.oid, &shifted, 0);
+ shift_tree(repo, &one->object.oid, &two->object.oid, &shifted, 0);
} else {
- shift_tree_by(&one->object.oid, &two->object.oid, &shifted,
+ shift_tree_by(repo, &one->object.oid, &two->object.oid, &shifted,
subtree_shift);
}
if (oideq(&two->object.oid, &shifted))
diff --git a/t/helper/test-match-trees.c b/t/helper/test-match-trees.c
index 96857f26ac..b9fd427571 100644
--- a/t/helper/test-match-trees.c
+++ b/t/helper/test-match-trees.c
@@ -20,7 +20,7 @@ int cmd__match_trees(int ac, const char **av)
if (!two)
die("not a tree-ish %s", av[2]);
- shift_tree(&one->object.oid, &two->object.oid, &shifted, -1);
+ shift_tree(the_repository, &one->object.oid, &two->object.oid, &shifted, -1);
printf("shifted: %s\n", oid_to_hex(&shifted));
exit(0);
--
2.22.0.rc0.322.g2b0371e29a
next prev parent reply other threads:[~2019-06-24 9:56 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-06-24 9:55 [PATCH 0/6] Kill the_repository in tree-walk.c Nguyễn Thái Ngọc Duy
2019-06-24 9:55 ` [PATCH 1/6] sha1-file.c: remove the_repo from read_object_with_reference() Nguyễn Thái Ngọc Duy
2019-06-27 12:54 ` Johannes Schindelin
2019-06-27 13:12 ` Duy Nguyen
2019-06-24 9:55 ` [PATCH 2/6] tree-walk.c: remove the_repo from fill_tree_descriptor() Nguyễn Thái Ngọc Duy
2019-06-24 13:30 ` Derrick Stolee
2019-06-26 16:27 ` Junio C Hamano
2019-06-26 16:47 ` Derrick Stolee
2019-06-24 9:55 ` [PATCH 3/6] tree-walk.c: remove the_repo from get_tree_entry() Nguyễn Thái Ngọc Duy
2019-06-24 14:20 ` Derrick Stolee
2019-06-24 14:55 ` Duy Nguyen
2019-06-24 9:55 ` [PATCH 4/6] tree-walk.c: remove the_repo from get_tree_entry_follow_symlinks() Nguyễn Thái Ngọc Duy
2019-06-24 9:55 ` Nguyễn Thái Ngọc Duy [this message]
2019-06-24 9:55 ` [PATCH 6/6] Use the right 'struct repository' instead of the_repository Nguyễn Thái Ngọc Duy
2019-06-24 14:24 ` Derrick Stolee
2019-06-24 14:45 ` Duy Nguyen
2019-06-27 9:06 ` Johannes Schindelin
2019-06-26 17:20 ` [PATCH 0/6] Kill the_repository in tree-walk.c Junio C Hamano
2019-06-27 13:04 ` Johannes Schindelin
2019-06-27 17:09 ` Derrick Stolee
2019-06-27 9:28 ` [PATCH v2 " Nguyễn Thái Ngọc Duy
2019-06-27 9:28 ` [PATCH v2 1/6] sha1-file.c: remove the_repo from read_object_with_reference() Nguyễn Thái Ngọc Duy
2019-06-28 12:46 ` Johannes Schindelin
2019-06-27 9:28 ` [PATCH v2 2/6] tree-walk.c: remove the_repo from fill_tree_descriptor() Nguyễn Thái Ngọc Duy
2019-06-27 9:28 ` [PATCH v2 3/6] tree-walk.c: remove the_repo from get_tree_entry() Nguyễn Thái Ngọc Duy
2019-06-27 9:28 ` [PATCH v2 4/6] tree-walk.c: remove the_repo from get_tree_entry_follow_symlinks() Nguyễn Thái Ngọc Duy
2019-06-27 9:28 ` [PATCH v2 5/6] match-trees.c: remove the_repo from shift_tree*() Nguyễn Thái Ngọc Duy
2019-06-27 9:28 ` [PATCH v2 6/6] Use the right 'struct repository' instead of the_repository Nguyễn Thái Ngọc Duy
2019-06-27 19:44 ` [PATCH v2 0/6] Kill the_repository in tree-walk.c Junio C Hamano
2019-06-28 9:35 ` [PATCH v2 7/6] t7814: do not generate same commits in different repos Nguyễn Thái Ngọc Duy
2019-06-28 16:17 ` Junio C Hamano
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20190624095533.22162-6-pclouds@gmail.com \
--to=pclouds@gmail.com \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.