forked from enlightenment/efl
eina/efreet: open file with binary file on Windows
@fix Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
This commit is contained in:
parent
ebf6d95ed6
commit
a1243410a7
|
@ -15,6 +15,10 @@
|
|||
#include <Ecore.h>
|
||||
#include <Ecore_File.h>
|
||||
|
||||
#ifndef O_BINARY
|
||||
# define O_BINARY 0
|
||||
#endif
|
||||
|
||||
#define EFREET_MODULE_LOG_DOM _efreet_desktop_cache_log_dom
|
||||
static int _efreet_desktop_cache_log_dom = -1;
|
||||
|
||||
|
@ -207,7 +211,7 @@ cache_lock_file(void)
|
|||
int lockfd;
|
||||
|
||||
snprintf(file, sizeof(file), "%s/efreet/desktop_data.lock", efreet_cache_home_get());
|
||||
lockfd = open(file, O_CREAT | O_RDWR, S_IRUSR | S_IWUSR);
|
||||
lockfd = open(file, O_CREAT | O_BINARY | O_RDWR, S_IRUSR | S_IWUSR);
|
||||
if (lockfd < 0) return -1;
|
||||
efreet_fsetowner(lockfd);
|
||||
|
||||
|
|
|
@ -48,6 +48,10 @@
|
|||
# include <Escape.h>
|
||||
#endif
|
||||
|
||||
#ifndef O_BINARY
|
||||
# define O_BINARY 0
|
||||
#endif
|
||||
|
||||
#ifdef MAP_FAILED
|
||||
# undef MAP_FAILED
|
||||
#endif
|
||||
|
@ -874,13 +878,13 @@ eina_file_copy(const char *src, const char *dst, Eina_File_Copy_Flags flags, Ein
|
|||
EINA_SAFETY_ON_NULL_RETURN_VAL(src, EINA_FALSE);
|
||||
EINA_SAFETY_ON_NULL_RETURN_VAL(dst, EINA_FALSE);
|
||||
|
||||
s = open(src, O_RDONLY);
|
||||
s = open(src, O_RDONLY | O_BINARY);
|
||||
EINA_SAFETY_ON_TRUE_RETURN_VAL (s < 0, EINA_FALSE);
|
||||
|
||||
success = (fstat(s, &st) == 0);
|
||||
EINA_SAFETY_ON_FALSE_GOTO(success, end);
|
||||
|
||||
d = open(dst, O_WRONLY | O_CREAT | O_TRUNC, S_IRUSR | S_IWUSR);
|
||||
d = open(dst, O_WRONLY | O_BINARY | O_CREAT | O_TRUNC, S_IRUSR | S_IWUSR);
|
||||
EINA_SAFETY_ON_TRUE_GOTO(d < 0, end);
|
||||
|
||||
success = _eina_file_copy_internal(s, d, st.st_size, cb, cb_data);
|
||||
|
|
Loading…
Reference in New Issue