From 709b975ca3fa10fd604ebe5cf1be49e88ba6e463 Mon Sep 17 00:00:00 2001 From: Cedric Bail Date: Wed, 13 Mar 2013 07:46:30 +0100 Subject: [PATCH] check fchmod existence for portabilityy --- configure.ac | 2 ++ src/lib/eina/eina_file.c | 2 ++ 2 files changed, 4 insertions(+) diff --git a/configure.ac b/configure.ac index 36e97769bd..6e63ad8b4d 100644 --- a/configure.ac +++ b/configure.ac @@ -732,6 +732,8 @@ AC_DEFINE_IF([HAVE_DIRENT_H], [test "x${have_dirent}" = "xyes"], ### Checks for library functions +AC_CHECK_FUNCS([fchmod]) + EFL_CHECK_FUNCS([EINA], [dlopen dladdr iconv shm_open splice setxattr]) enable_log="no" diff --git a/src/lib/eina/eina_file.c b/src/lib/eina/eina_file.c index 126a665fbf..e498794e1b 100644 --- a/src/lib/eina/eina_file.c +++ b/src/lib/eina/eina_file.c @@ -1747,8 +1747,10 @@ eina_file_copy(const char *src, const char *dst, Eina_File_Copy_Flags flags, Ein success = _eina_file_copy_internal(s, d, st.st_size, cb, cb_data); if (success) { +#ifdef HAVE_FCHMOD if (flags & EINA_FILE_COPY_PERMISSION) fchmod(d, st.st_mode); +#endif if (flags & EINA_FILE_COPY_XATTR) eina_xattr_fd_copy(s, d); }