From 5ee2fe777c41d9ad9e7eb9fece56fe21f830c5cd Mon Sep 17 00:00:00 2001 From: Ramsay Jones Date: Wed, 3 Dec 2008 23:53:55 +0000 Subject: [PATCH] Add a GIT_PATH_MAX constant The PATH_MAX symbol is often, but not always, defined in the header. In particular, on cygwin you need to include this header to avoid a compilation error. However, some systems define PATH_MAX to be something as small as 256, which POSIX is happy to allow, while others allow much larger values. In general it can vary from one filesystem to another. In order to avoid the vagaries of different systems, define our own symbol. Signed-off-by: Ramsay Jones Signed-off-by: Shawn O. Pearce --- src/common.h | 3 +++ src/fileops.c | 3 ++- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/src/common.h b/src/common.h index 1a2e9c0f1..f5be02b49 100644 --- a/src/common.h +++ b/src/common.h @@ -10,4 +10,7 @@ #include #include "git/common.h" + +#define GIT_PATH_MAX 4096 + #endif /* INCLUDE_common_h__ */ diff --git a/src/fileops.c b/src/fileops.c index 0e6e7fdcb..e5f6ef800 100644 --- a/src/fileops.c +++ b/src/fileops.c @@ -1,3 +1,4 @@ +#include "common.h" #include "fileops.h" int gitfo_read(git_file fd, void *buf, size_t cnt) @@ -141,7 +142,7 @@ int gitfo_close_cached(gitfo_cache *ioc) */ int git_foreach_dirent(const char *wd, int (*fn)(void *, const char *), void *arg) { - char path[PATH_MAX]; + char path[GIT_PATH_MAX]; size_t wd_len; DIR *dir; struct dirent *de;