]> mj.ucw.cz Git - libucw.git/commitdiff
Added bfilesync().
authorMartin Mares <mj@ucw.cz>
Sun, 15 Aug 2004 12:09:45 +0000 (12:09 +0000)
committerMartin Mares <mj@ucw.cz>
Sun, 15 Aug 2004 12:09:45 +0000 (12:09 +0000)
lib/fastbuf.h
lib/fb-file.c

index fadf306135ec7ebe5b490816d7ec871230234a9c..851a1a0c1ec2342cd869d47eecdb1baa17edf28f 100644 (file)
@@ -84,6 +84,7 @@ struct fastbuf *bopen(byte *name, uns mode, uns buflen);
 struct fastbuf *bopen_tmp(uns buflen);
 struct fastbuf *bfdopen(int fd, uns buflen);
 struct fastbuf *bfdopen_shared(int fd, uns buflen);
+void bfilesync(struct fastbuf *b);
 
 /* FastIO on in-memory streams */
 
index 915c1b40f78018ff4478eae894af59d487ca9fd7..9fa3f8f545a6a98fece1b1a4eab9e55f23739ad6 100644 (file)
@@ -153,6 +153,14 @@ bfdopen_shared(int fd, uns buflen)
   return f;
 }
 
+void
+bfilesync(struct fastbuf *b)
+{
+  bflush(b);
+  if (fsync(FB_FILE(b)->fd) < 0)
+    log(L_ERROR, "fsync(%s) failed: %m", b->name);
+}
+
 #ifdef TEST
 
 int main(int argc, char **argv)