From e2720f1fbe09649e6da282cd33b9794867d3d0fb Mon Sep 17 00:00:00 2001 From: Maxime Coste Date: Sun, 27 Sep 2015 11:55:34 +0100 Subject: Store timespec for buffer fs timestamps, not just time_t time_t has a resolution of one second, which cause troubles when a file changes multiple time during that same second. --- src/buffer_utils.cc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/buffer_utils.cc') diff --git a/src/buffer_utils.cc b/src/buffer_utils.cc index c6795fe1..0bebf5d6 100644 --- a/src/buffer_utils.cc +++ b/src/buffer_utils.cc @@ -47,7 +47,7 @@ ByteCount get_byte_to_column(const Buffer& buffer, CharCount tabstop, CharCoord } Buffer* create_buffer_from_data(StringView data, StringView name, - Buffer::Flags flags, time_t fs_timestamp) + Buffer::Flags flags, timespec fs_timestamp) { bool bom = false, crlf = false; @@ -98,7 +98,7 @@ Buffer* create_fifo_buffer(String name, int fd, bool scroll) if (buffer) { buffer->flags() |= Buffer::Flags::NoUndo; - buffer->reload({"\n"_ss}, 0); + buffer->reload({"\n"_ss}, InvalidTime); } else buffer = new Buffer(std::move(name), Buffer::Flags::Fifo | Buffer::Flags::NoUndo); -- cgit v1.2.3