From: Brandon Williams <bmwill@google.com>
To: git@vger.kernel.org
Cc: sbeller@google.com, gitster@pobox.com, jrnieder@gmail.com,
Johannes.Schindelin@gmx.de, pclouds@gmail.com,
Brandon Williams <bmwill@google.com>
Subject: [RFC 14/14] dir: convert fill_directory to take an index
Date: Fri, 5 May 2017 12:53:34 -0700 [thread overview]
Message-ID: <20170505195334.121856-15-bmwill@google.com> (raw)
In-Reply-To: <20170505195334.121856-1-bmwill@google.com>
Signed-off-by: Brandon Williams <bmwill@google.com>
---
builtin/add.c | 2 +-
builtin/clean.c | 2 +-
builtin/grep.c | 2 +-
builtin/ls-files.c | 2 +-
dir.c | 6 ++++--
dir.h | 4 +++-
wt-status.c | 2 +-
7 files changed, 12 insertions(+), 8 deletions(-)
diff --git a/builtin/add.c b/builtin/add.c
index 0b52aeced..36cad00ae 100644
--- a/builtin/add.c
+++ b/builtin/add.c
@@ -400,7 +400,7 @@ int cmd_add(int argc, const char **argv, const char *prefix)
}
/* This picks up the paths that are not tracked */
- baselen = fill_directory(&dir, &pathspec);
+ baselen = fill_directory(&dir, &the_index, &pathspec);
if (pathspec.nr)
seen = prune_directory(&dir, &pathspec, baselen);
}
diff --git a/builtin/clean.c b/builtin/clean.c
index 39866afab..329b68c40 100644
--- a/builtin/clean.c
+++ b/builtin/clean.c
@@ -930,7 +930,7 @@ int cmd_clean(int argc, const char **argv, const char *prefix)
PATHSPEC_PREFER_CWD,
prefix, argv);
- fill_directory(&dir, &pathspec);
+ fill_directory(&dir, &the_index, &pathspec);
for (i = 0; i < dir.nr; i++) {
struct dir_entry *ent = dir.entries[i];
diff --git a/builtin/grep.c b/builtin/grep.c
index 65070c52f..ca1344133 100644
--- a/builtin/grep.c
+++ b/builtin/grep.c
@@ -866,7 +866,7 @@ static int grep_directory(struct grep_opt *opt, const struct pathspec *pathspec,
if (exc_std)
setup_standard_excludes(&dir);
- fill_directory(&dir, pathspec);
+ fill_directory(&dir, &the_index, pathspec);
for (i = 0; i < dir.nr; i++) {
if (!dir_path_match(dir.entries[i], pathspec, 0, NULL))
continue;
diff --git a/builtin/ls-files.c b/builtin/ls-files.c
index ccba227e2..239c18a1f 100644
--- a/builtin/ls-files.c
+++ b/builtin/ls-files.c
@@ -326,7 +326,7 @@ static void show_files(struct dir_struct *dir)
if (show_others || show_killed) {
if (!show_others)
dir->flags |= DIR_COLLECT_KILLED_ONLY;
- fill_directory(dir, &pathspec);
+ fill_directory(dir, &the_index, &pathspec);
if (show_others)
show_other_files(dir);
if (show_killed)
diff --git a/dir.c b/dir.c
index 4eb8cb6a2..3f3167e55 100644
--- a/dir.c
+++ b/dir.c
@@ -177,7 +177,9 @@ char *common_prefix(const struct pathspec *pathspec)
return len ? xmemdupz(pathspec->items[0].match, len) : NULL;
}
-int fill_directory(struct dir_struct *dir, const struct pathspec *pathspec)
+int fill_directory(struct dir_struct *dir,
+ struct index_state *istate,
+ const struct pathspec *pathspec)
{
const char *prefix;
size_t prefix_len;
@@ -190,7 +192,7 @@ int fill_directory(struct dir_struct *dir, const struct pathspec *pathspec)
prefix = prefix_len ? pathspec->items[0].match : "";
/* Read the directory and prune it */
- read_directory(dir, &the_index, prefix, prefix_len, pathspec);
+ read_directory(dir, istate, prefix, prefix_len, pathspec);
return prefix_len;
}
diff --git a/dir.h b/dir.h
index a23bcd005..17d110693 100644
--- a/dir.h
+++ b/dir.h
@@ -214,7 +214,9 @@ extern int match_pathspec(const struct pathspec *pathspec,
extern int report_path_error(const char *ps_matched, const struct pathspec *pathspec, const char *prefix);
extern int within_depth(const char *name, int namelen, int depth, int max_depth);
-extern int fill_directory(struct dir_struct *dir, const struct pathspec *pathspec);
+extern int fill_directory(struct dir_struct *dir,
+ struct index_state *istate,
+ const struct pathspec *pathspec);
extern int read_directory(struct dir_struct *, struct index_state *istate,
const char *path, int len,
const struct pathspec *pathspec);
diff --git a/wt-status.c b/wt-status.c
index 308cf3779..9e2d03cd9 100644
--- a/wt-status.c
+++ b/wt-status.c
@@ -652,7 +652,7 @@ static void wt_status_collect_untracked(struct wt_status *s)
dir.untracked = the_index.untracked;
setup_standard_excludes(&dir);
- fill_directory(&dir, &s->pathspec);
+ fill_directory(&dir, &the_index, &s->pathspec);
for (i = 0; i < dir.nr; i++) {
struct dir_entry *ent = dir.entries[i];
--
2.13.0.rc1.294.g07d810a77f-goog
next prev parent reply other threads:[~2017-05-05 19:54 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-05-05 19:53 [RFC 00/14] convert dir.c to take an index parameter Brandon Williams
2017-05-05 19:53 ` [RFC 01/14] dir: stop using the index compatibility macros Brandon Williams
2017-05-05 19:53 ` [RFC 02/14] dir: convert read_skip_worktree_file_from_index to take an index Brandon Williams
2017-05-05 19:53 ` [RFC 03/14] dir: convert directory_exists_in_index to take index Brandon Williams
2017-05-05 19:53 ` [RFC 04/14] dir: convert get_dtype " Brandon Williams
2017-05-05 19:53 ` [RFC 05/14] dir: convert dir_add* to take an index Brandon Williams
2017-05-05 19:53 ` [RFC 06/14] dir: convert last_exclude_matching_from_list " Brandon Williams
2017-05-05 19:53 ` [RFC 07/14] dir: convert is_excluded_from_list " Brandon Williams
2017-05-05 19:53 ` [RFC 08/14] dir: convert add_excludes " Brandon Williams
2017-05-05 19:53 ` [RFC 09/14] dir: convert prep_exclude " Brandon Williams
2017-05-05 19:53 ` [RFC 10/14] dir: convert is_excluded " Brandon Williams
2017-05-05 19:53 ` [RFC 11/14] dir: convert open_cached_dir " Brandon Williams
2017-05-05 19:53 ` [RFC 12/14] dir: convert read_directory_recursive " Brandon Williams
2017-05-05 19:53 ` [RFC 13/14] dir: convert read_directory " Brandon Williams
2017-05-05 19:53 ` Brandon Williams [this message]
2017-05-06 10:26 ` [RFC 00/14] convert dir.c to take an index parameter Junio C Hamano
2017-05-08 17:12 ` Brandon Williams
2017-05-08 18:00 ` Jeff Hostetler
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=20170505195334.121856-15-bmwill@google.com \
--to=bmwill@google.com \
--cc=Johannes.Schindelin@gmx.de \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=jrnieder@gmail.com \
--cc=pclouds@gmail.com \
--cc=sbeller@google.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.