summaryrefslogtreecommitdiff
path: root/src/buffer_manager.cc
diff options
context:
space:
mode:
authorMaxime Coste <frrrwww@gmail.com>2014-10-13 13:38:28 +0100
committerMaxime Coste <frrrwww@gmail.com>2014-10-13 13:38:28 +0100
commit2adaa7bdfab5b62ed18a57a94fe150ca66026328 (patch)
treeec4368df7d49f0b454d1e099499cb69af03f887a /src/buffer_manager.cc
parentfa85f0fc32b105bef5948585a7d7a38c2910854b (diff)
Do not assert on SIGTERM and backup modified buffers on signal induced termination
Diffstat (limited to 'src/buffer_manager.cc')
-rw-r--r--src/buffer_manager.cc9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/buffer_manager.cc b/src/buffer_manager.cc
index b55ecf73..400c9f5b 100644
--- a/src/buffer_manager.cc
+++ b/src/buffer_manager.cc
@@ -105,6 +105,15 @@ void BufferManager::set_last_used_buffer(Buffer& buffer)
m_buffers.emplace(m_buffers.begin(), &buffer);
}
+void BufferManager::backup_modified_buffers()
+{
+ for (auto& buf : m_buffers)
+ {
+ if ((buf->flags() & Buffer::Flags::File) and buf->is_modified())
+ write_buffer_to_backup_file(*buf);
+ }
+}
+
CandidateList BufferManager::complete_buffer_name(StringView prefix,
ByteCount cursor_pos)
{