1 |
vapier 13/09/29 10:07:28 |
2 |
|
3 |
Modified: scandirat.c |
4 |
Log: |
5 |
scandirat: use _DIRENT_HAVE_D_RECLEN to be slightly more portable #485430 |
6 |
|
7 |
Revision Changes Path |
8 |
1.5 portage-utils/libq/scandirat.c |
9 |
|
10 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo-projects/portage-utils/libq/scandirat.c?rev=1.5&view=markup |
11 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-projects/portage-utils/libq/scandirat.c?rev=1.5&content-type=text/plain |
12 |
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-projects/portage-utils/libq/scandirat.c?r1=1.4&r2=1.5 |
13 |
|
14 |
Index: scandirat.c |
15 |
=================================================================== |
16 |
RCS file: /var/cvsroot/gentoo-projects/portage-utils/libq/scandirat.c,v |
17 |
retrieving revision 1.4 |
18 |
retrieving revision 1.5 |
19 |
diff -u -r1.4 -r1.5 |
20 |
--- scandirat.c 16 Jan 2012 01:10:32 -0000 1.4 |
21 |
+++ scandirat.c 29 Sep 2013 10:07:28 -0000 1.5 |
22 |
@@ -1,7 +1,7 @@ |
23 |
/* |
24 |
* Copyright 2005-2011 Gentoo Foundation |
25 |
* Distributed under the terms of the GNU General Public License v2 |
26 |
- * $Header: /var/cvsroot/gentoo-projects/portage-utils/libq/scandirat.c,v 1.4 2012/01/16 01:10:32 vapier Exp $ |
27 |
+ * $Header: /var/cvsroot/gentoo-projects/portage-utils/libq/scandirat.c,v 1.5 2013/09/29 10:07:28 vapier Exp $ |
28 |
* |
29 |
* Copyright 2005-2010 Ned Ludd - <solar@g.o> |
30 |
* Copyright 2005-2011 Mike Frysinger - <vapier@g.o> |
31 |
@@ -13,7 +13,13 @@ |
32 |
# endif |
33 |
#endif |
34 |
|
35 |
-#if !defined(HAVE_SCANDIRAT) |
36 |
+#if !defined(HAVE_SCANDIRATf) |
37 |
+ |
38 |
+#if defined(_DIRENT_HAVE_D_RECLEN) |
39 |
+# define reclen(de) ((de)->d_reclen) |
40 |
+#else |
41 |
+# define reclen(de) (sizeof(*(de))) |
42 |
+#endif |
43 |
|
44 |
static int scandirat(int dir_fd, const char *dir, struct dirent ***dirlist, |
45 |
int (*filter)(const struct dirent *), |
46 |
@@ -39,7 +45,7 @@ |
47 |
continue; |
48 |
|
49 |
ret = realloc(ret, sizeof(*ret) * (cnt + 1)); |
50 |
- ret[cnt++] = xmemdup(de, de->d_reclen); |
51 |
+ ret[cnt++] = xmemdup(de, reclen(de)); |
52 |
} |
53 |
*dirlist = ret; |