diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/path.c | 4 | ||||
-rw-r--r-- | src/posix.h | 6 |
2 files changed, 7 insertions, 3 deletions
diff --git a/src/path.c b/src/path.c index 84edf6d89..056b6b910 100644 --- a/src/path.c +++ b/src/path.c @@ -512,7 +512,7 @@ int git_path_direach( de_buf = git__malloc(sizeof(struct dirent)); #endif - while (p_readdir_r(dir, de_buf, &de) == 0 && de != NULL) { + while (p_readdir_r(dir, de_buf, de) == 0 && de != NULL) { int result; if (is_dot_or_dotdot(de->d_name)) @@ -570,7 +570,7 @@ int git_path_dirload( path_len -= prefix_len; need_slash = (path_len > 0 && path[path_len-1] != '/') ? 1 : 0; - while ((error = p_readdir_r(dir, de_buf, &de)) == 0 && de != NULL) { + while ((error = p_readdir_r(dir, de_buf, de)) == 0 && de != NULL) { char *entry_path; size_t entry_len; diff --git a/src/posix.h b/src/posix.h index d020d94ac..8e8b394c8 100644 --- a/src/posix.h +++ b/src/posix.h @@ -74,6 +74,10 @@ typedef SOCKET GIT_SOCKET; # include "unix/posix.h" #endif -#define p_readdir_r(d,e,r) readdir_r(d,e,r) +#ifndef __amigaos4__ +#define p_readdir_r(d,e,r) readdir_r(d,e,&r) +#else +#define p_readdir_r(d,e,r) r = readdir(d) +#endif #endif |