summaryrefslogtreecommitdiff
path: root/c_src/filebuffer.c
diff options
context:
space:
mode:
Diffstat (limited to 'c_src/filebuffer.c')
-rw-r--r--c_src/filebuffer.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/c_src/filebuffer.c b/c_src/filebuffer.c
index 921ba37..40b79ad 100644
--- a/c_src/filebuffer.c
+++ b/c_src/filebuffer.c
@@ -231,6 +231,18 @@ bf_open(const char *path, int flags, const char *name, int lock)
}
void
+bf_reload(buffered_file *file)
+{
+ off_t datafile_filesize = lseek(file->fd, 0, SEEK_END);
+ if (datafile_filesize < 0) {
+ err(1, "lseek %s", file->name);
+ }
+ file->filesize = (uint64_t) datafile_filesize;
+ file->datasize = file->filesize;
+ file->lastcommit = file->datasize;
+}
+
+void
bf_close(buffered_file *file)
{
bf_flush(file);