commit 7d02d6c1fe57e6abaa1bf03b27c2ed1487aef71f
Author: Oswald Buddenhagen <o...@users.sf.net>
Date:   Tue Feb 8 14:57:24 2022 +0100

    move checked FILE functions to util.c
    
    while they are used only in sync.c, they are conceptually low-level.

 src/common.h |  8 ++++++++
 src/sync.c   | 35 -----------------------------------
 src/util.c   | 31 +++++++++++++++++++++++++++++++
 3 files changed, 39 insertions(+), 35 deletions(-)

diff --git a/src/common.h b/src/common.h
index 7b27eaab..8757c352 100644
--- a/src/common.h
+++ b/src/common.h
@@ -141,6 +141,14 @@ void ATTR_PRINTFLIKE(1, 0) vsys_error( const char *, 
va_list va );
 void ATTR_PRINTFLIKE(1, 2) sys_error( const char *, ... );
 void flushn( void );
 
+#if !defined(_POSIX_SYNCHRONIZED_IO) || _POSIX_SYNCHRONIZED_IO <= 0
+# define fdatasync fsync
+#endif
+
+void ATTR_PRINTFLIKE(2, 0) vFprintf( FILE *f, const char *msg, va_list va );
+void ATTR_PRINTFLIKE(2, 3) Fprintf( FILE *f, const char *msg, ... );
+void Fclose( FILE *f, int safe );
+
 typedef struct string_list {
        struct string_list *next;
        char string[1];
diff --git a/src/sync.c b/src/sync.c
index 767f502c..382804f2 100644
--- a/src/sync.c
+++ b/src/sync.c
@@ -14,10 +14,6 @@
 #include <errno.h>
 #include <sys/stat.h>
 
-#if !defined(_POSIX_SYNCHRONIZED_IO) || _POSIX_SYNCHRONIZED_IO <= 0
-# define fdatasync fsync
-#endif
-
 #define JOURNAL_VERSION "4"
 
 channel_conf_t global_conf;
@@ -32,37 +28,6 @@ int trash_total[2], trash_done[2];
 
 const char *str_fn[] = { "far side", "near side" }, *str_hl[] = { "push", 
"pull" };
 
-static void
-Fclose( FILE *f, int safe )
-{
-       if ((safe && (fflush( f ) || (UseFSync && fdatasync( fileno( f ) )))) 
|| fclose( f ) == EOF) {
-               sys_error( "Error: cannot close file" );
-               exit( 1 );
-       }
-}
-
-static void ATTR_PRINTFLIKE(2, 0)
-vFprintf( FILE *f, const char *msg, va_list va )
-{
-       int r;
-
-       r = vfprintf( f, msg, va );
-       if (r < 0) {
-               sys_error( "Error: cannot write file" );
-               exit( 1 );
-       }
-}
-
-static void ATTR_PRINTFLIKE(2, 3)
-Fprintf( FILE *f, const char *msg, ... )
-{
-       va_list va;
-
-       va_start( va, msg );
-       vFprintf( f, msg, va );
-       va_end( va );
-}
-
 
 /* Keep the mailbox driver flag definitions in sync: */
 /* grep for MAILBOX_DRIVER_FLAG */
diff --git a/src/util.c b/src/util.c
index d5edd956..19b2bf5d 100644
--- a/src/util.c
+++ b/src/util.c
@@ -173,6 +173,37 @@ sys_error( const char *msg, ... )
        va_end( va );
 }
 
+void
+vFprintf( FILE *f, const char *msg, va_list va )
+{
+       int r;
+
+       r = vfprintf( f, msg, va );
+       if (r < 0) {
+               sys_error( "Error: cannot write file" );
+               exit( 1 );
+       }
+}
+
+void
+Fprintf( FILE *f, const char *msg, ... )
+{
+       va_list va;
+
+       va_start( va, msg );
+       vFprintf( f, msg, va );
+       va_end( va );
+}
+
+void
+Fclose( FILE *f, int safe )
+{
+       if ((safe && (fflush( f ) || (UseFSync && fdatasync( fileno( f ) )))) 
|| fclose( f ) == EOF) {
+               sys_error( "Error: cannot close file" );
+               exit( 1 );
+       }
+}
+
 void
 add_string_list_n( string_list_t **list, const char *str, uint len )
 {


_______________________________________________
isync-devel mailing list
isync-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/isync-devel

Reply via email to