diff options
| author | Maxime Coste <frrrwww@gmail.com> | 2015-09-27 11:55:34 +0100 |
|---|---|---|
| committer | Maxime Coste <frrrwww@gmail.com> | 2015-09-27 11:55:34 +0100 |
| commit | e2720f1fbe09649e6da282cd33b9794867d3d0fb (patch) | |
| tree | bb5f906151c28fc5fde6078b842a71c0ba4fc318 /src/buffer_utils.cc | |
| parent | 122a799ecb7dd1a6d6ff392ab9dc9d88fafad770 (diff) | |
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.
Diffstat (limited to 'src/buffer_utils.cc')
| -rw-r--r-- | src/buffer_utils.cc | 4 |
1 files changed, 2 insertions, 2 deletions
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); |
