aboutsummaryrefslogtreecommitdiff
path: root/entry.c
diff options
context:
space:
mode:
authorAlexander Potashev <aspotashev@gmail.com>2009-01-10 15:07:50 +0300
committerJunio C Hamano <gitster@pobox.com>2009-01-11 13:21:57 -0800
commit8ca12c0d62c0be4a4987c4a936467ea2a92e915a (patch)
tree42b4cafd04bbbdfa90a38b6a49396cd3b06a97db /entry.c
parentc123b7c5fb596d93cd015645212c379fc3c381d5 (diff)
downloadgit-8ca12c0d62c0be4a4987c4a936467ea2a92e915a.tar.gz
git-8ca12c0d62c0be4a4987c4a936467ea2a92e915a.tar.xz
add is_dot_or_dotdot inline function
A new inline function is_dot_or_dotdot is used to check if the directory name is either "." or "..". It returns a non-zero value if the given string is "." or "..". It's applicable to a lot of Git source code. Signed-off-by: Alexander Potashev <aspotashev@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'entry.c')
-rw-r--r--entry.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/entry.c b/entry.c
index aa2ee46a8..5f24816eb 100644
--- a/entry.c
+++ b/entry.c
@@ -1,5 +1,6 @@
#include "cache.h"
#include "blob.h"
+#include "dir.h"
static void create_directories(const char *path, const struct checkout *state)
{
@@ -62,9 +63,7 @@ static void remove_subtree(const char *path)
*name++ = '/';
while ((de = readdir(dir)) != NULL) {
struct stat st;
- if ((de->d_name[0] == '.') &&
- ((de->d_name[1] == 0) ||
- ((de->d_name[1] == '.') && de->d_name[2] == 0)))
+ if (is_dot_or_dotdot(de->d_name))
continue;
strcpy(name, de->d_name);
if (lstat(pathbuf, &st))