summaryrefslogtreecommitdiff
path: root/src/path.c
diff options
context:
space:
mode:
authorCyril Roelandt <tipecaml@gmail.com>2012-07-06 00:54:07 +0200
committerCyril Roelandt <tipecaml@gmail.com>2012-07-06 00:54:07 +0200
commit296f60f56da4854d746984415e7e9887796d4e64 (patch)
treefedccaf793870375465e639ab0516ea9b0439793 /src/path.c
parentb00e9216058e58fd17d27df55cac3b991ad7bd31 (diff)
downloadlibgit2-296f60f56da4854d746984415e7e9887796d4e64.tar.gz
Fix libgit2 on GNU/Hurd.
On GNU, the d_name field of the dirent structure is defined as "char d_name[1]", so we must allocate more than sizeof(struct dirent) bytes, just like on Sun.
Diffstat (limited to 'src/path.c')
-rw-r--r--src/path.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/path.c b/src/path.c
index a6574b3de..9c88240e0 100644
--- a/src/path.c
+++ b/src/path.c
@@ -515,7 +515,7 @@ int git_path_direach(
return -1;
}
-#ifdef __sun
+#if defined(__sun) || defined(__GNU__)
de_buf = git__malloc(sizeof(struct dirent) + FILENAME_MAX + 1);
#else
de_buf = git__malloc(sizeof(struct dirent));
@@ -569,7 +569,7 @@ int git_path_dirload(
return -1;
}
-#ifdef __sun
+#if defined(__sun) || defined(__GNU__)
de_buf = git__malloc(sizeof(struct dirent) + FILENAME_MAX + 1);
#else
de_buf = git__malloc(sizeof(struct dirent));