diff options
Diffstat (limited to 'cut-n-paste/recent-files/egg-recent-model.c')
-rw-r--r-- | cut-n-paste/recent-files/egg-recent-model.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/cut-n-paste/recent-files/egg-recent-model.c b/cut-n-paste/recent-files/egg-recent-model.c index 8b3abe5..067a635 100644 --- a/cut-n-paste/recent-files/egg-recent-model.c +++ b/cut-n-paste/recent-files/egg-recent-model.c @@ -193,7 +193,9 @@ egg_recent_model_write_raw (EggRecentModel *model, FILE *file, if (fputs (content, file) == EOF) return FALSE; +#ifndef G_OS_WIN32 fsync (fd); +#endif rewind (file); return TRUE; @@ -884,6 +886,7 @@ egg_recent_model_open_file (EggRecentModel *model) static gboolean egg_recent_model_lock_file (FILE *file) { +#ifdef F_TLOCK int fd; gint try = 5; @@ -913,17 +916,24 @@ egg_recent_model_lock_file (FILE *file) } return FALSE; +#else + return TRUE; +#endif } static gboolean egg_recent_model_unlock_file (FILE *file) { +#ifdef F_TLOCK int fd; rewind (file); fd = fileno (file); return (lockf (fd, F_ULOCK, 0) == 0) ? TRUE : FALSE; +#else + return TRUE; +#endif } static void |