From 0b15b57e63fa6ecb3eabb24db1bcf8667f9e4c0e Mon Sep 17 00:00:00 2001 From: Dmytro Maluka Date: Sun, 18 Aug 2024 15:33:35 +0200 Subject: [PATCH] buffer: Set fastdirty=true for large file when reopening Similarly to how we force `fastdirty` to true when opening a large file (when creating the buffer), force it also when reopening a file, in case the file on disk became large since we opened it. --- internal/buffer/buffer.go | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/internal/buffer/buffer.go b/internal/buffer/buffer.go index 1d899663..3073eba0 100644 --- a/internal/buffer/buffer.go +++ b/internal/buffer/buffer.go @@ -550,7 +550,11 @@ func (b *Buffer) ReOpen() error { err = b.UpdateModTime() if !b.Settings["fastdirty"].(bool) { - calcHash(b, &b.origHash) + if len(data) > LargeFileThreshold { + b.Settings["fastdirty"] = true + } else { + calcHash(b, &b.origHash) + } } b.isModified = false b.RelocateCursors()