Re: [PATCH 3/3][GSOC] fsck: use is_dot_or_dotdot() instead of strcmp()
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Mar 17, 2014, 22:39 UTC
- Message-ID
- <xmqqtxawa1r5.fsf@gitster.dls.corp.google.com>
- In-Reply-To
- <1395091825-8330-3-git-send-email-sh19910711@gmail.com>
Hiroyuki Sano <sh19910711@gmail.com> writes:
Show 33 quoted lines
> The is_dot_or_dotdot() is used to check if the string is either "." or "..".
>
> Signed-off-by: Hiroyuki Sano <sh19910711@gmail.com>
> ---
> fsck.c | 11 +++++++----
> 1 file changed, 7 insertions(+), 4 deletions(-)
>
> diff --git a/fsck.c b/fsck.c
> index b3022ad..c9d7784 100644
> --- a/fsck.c
> +++ b/fsck.c
> @@ -6,6 +6,7 @@
> #include "commit.h"
> #include "tag.h"
> #include "fsck.h"
> +#include "dir.h"
>
> static int fsck_walk_tree(struct tree *tree, fsck_walk_func walk, void *data)
> {
> @@ -171,10 +172,12 @@ static int fsck_tree(struct tree *item, int strict, fsck_error error_func)
> has_full_path = 1;
> if (!*name)
> has_empty_name = 1;
> - if (!strcmp(name, "."))
> - has_dot = 1;
> - if (!strcmp(name, ".."))
> - has_dotdot = 1;
> + if (is_dot_or_dotdot(name)) {
> + if (!name[1])
> + has_dot = 1;
> + else
> + has_dotdot = 1;
> + }In what way is this an improvement?
This looks like "because I was told to", not "because the resulting code is better" to me.
The other patch on diff-no-index looked sensible, though.
> if (!strcmp(name, ".git")) > has_dotgit = 1; > has_zero_pad |= *(char *)desc.buffer == '0';