Re: [PATCH v2 2/2] dir: minor refactoring / clean-up
- From
Junio C Hamano <gitster@pobox.com>
- Date
- May 11, 2022, 16:51 UTC
- Message-ID
- <xmqqv8ucko6v.fsf@gitster.g>
- In-Reply-To
- <20220510171527.25778-3-ggossdev@gmail.com>
Goss Geppert <gg.oss.dev@gmail.com> writes:
> Improve readability.
It reads somewhat a subjective opinion, without explaining how/why the change makes it more readable. Perhaps
Narrow the scope of the nested_repo variable to the block that uses it.
or something?
I was hoping that we can/should apply these two patches near where the breakage happened, but unfortunately this part has been updated a bit since then, so merging upwards would involve a bit of conflict resolution. We should be able to manage.
Thanks.
Show 46 quoted lines
> Signed-off-by: Goss Geppert <ggossdev@gmail.com>
> ---
> dir.c | 16 +++++++++-------
> 1 file changed, 9 insertions(+), 7 deletions(-)
>
> diff --git a/dir.c b/dir.c
> index a1886e61a3..329db72999 100644
> --- a/dir.c
> +++ b/dir.c
> @@ -1861,7 +1861,7 @@ static enum path_treatment treat_directory(struct dir_struct *dir,
> */
> enum path_treatment state;
> int matches_how = 0;
> - int nested_repo = 0, check_only, stop_early;
> + int check_only, stop_early;
> int old_ignored_nr, old_untracked_nr;
> /* The "len-1" is to strip the final '/' */
> enum exist_status status = directory_exists_in_index(istate, dirname, len-1);
> @@ -1901,6 +1901,7 @@ static enum path_treatment treat_directory(struct dir_struct *dir,
> * configured by the user; see t2205 testcases 1a-1d for examples
> * where this matters
> */
> + int nested_repo;
> struct strbuf sb = STRBUF_INIT;
> strbuf_addstr(&sb, dirname);
> nested_repo = is_nonbare_repository_dir(&sb);
> @@ -1919,12 +1920,13 @@ static enum path_treatment treat_directory(struct dir_struct *dir,
> free(real_dirname);
> }
> strbuf_release(&sb);
> - }
> - if (nested_repo) {
> - if ((dir->flags & DIR_SKIP_NESTED_GIT) ||
> - (matches_how == MATCHED_RECURSIVELY_LEADING_PATHSPEC))
> - return path_none;
> - return excluded ? path_excluded : path_untracked;
> +
> + if (nested_repo) {
> + if ((dir->flags & DIR_SKIP_NESTED_GIT) ||
> + (matches_how == MATCHED_RECURSIVELY_LEADING_PATHSPEC))
> + return path_none;
> + return excluded ? path_excluded : path_untracked;
> + }
> }
>
> if (!(dir->flags & DIR_SHOW_OTHER_DIRECTORIES)) {