summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--libc/unistd/daemon.c10
-rw-r--r--libpthread/nptl/sem_open.c5
2 files changed, 14 insertions, 1 deletions
diff --git a/libc/unistd/daemon.c b/libc/unistd/daemon.c
index 6543f1c11..d71d25480 100644
--- a/libc/unistd/daemon.c
+++ b/libc/unistd/daemon.c
@@ -123,10 +123,18 @@ int daemon( int nochdir, int noclose )
#else
if (!noclose)
{
- struct stat64 st;
+#ifdef __UCLIBC_HAS_LFS__
+ struct stat64 st;
+#else
+ struct stat st;
+#endif
if ((fd = open_not_cancel(_PATH_DEVNULL, O_RDWR, 0)) != -1
+#ifdef __UCLIBC_HAS_LFS__
&& (__builtin_expect (fstat64 (fd, &st), 0) == 0))
+#else
+ && (__builtin_expect (fstat (fd, &st), 0) == 0))
+#endif
{
if (__builtin_expect (S_ISCHR (st.st_mode), 1) != 0) {
#endif
diff --git a/libpthread/nptl/sem_open.c b/libpthread/nptl/sem_open.c
index aebd4c940..3bada7d46 100644
--- a/libpthread/nptl/sem_open.c
+++ b/libpthread/nptl/sem_open.c
@@ -166,8 +166,13 @@ check_add_mapping (const char *name, size_t namelen, int fd, sem_t *existing)
sem_t *result = SEM_FAILED;
/* Get the information about the file. */
+#ifdef __UCLIBC_HAS_LFS__
struct stat64 st;
if (__fxstat64 (_STAT_VER, fd, &st) == 0)
+#else
+ struct stat st;
+ if (fstat (fd, &st) == 0)
+#endif
{
/* Get the lock. */
lll_lock (__sem_mappings_lock);