summaryrefslogtreecommitdiff
path: root/src/buffer_utils.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/buffer_utils.cc')
-rw-r--r--src/buffer_utils.cc19
1 files changed, 19 insertions, 0 deletions
diff --git a/src/buffer_utils.cc b/src/buffer_utils.cc
index ff05e781..d208386e 100644
--- a/src/buffer_utils.cc
+++ b/src/buffer_utils.cc
@@ -166,4 +166,23 @@ Buffer* create_fifo_buffer(String name, int fd, bool scroll)
return buffer;
}
+void write_to_debug_buffer(StringView str)
+{
+ if (not BufferManager::has_instance())
+ {
+ write(2, str.data(), (int)str.length());
+ write(2, "\n", 1);
+ return;
+ }
+
+ const StringView debug_buffer_name = "*debug*";
+ if (Buffer* buffer = BufferManager::instance().get_buffer_ifp(debug_buffer_name))
+ buffer->insert(buffer->end(), str);
+ else
+ {
+ String line = str + ((str.empty() or str.back() != '\n') ? "\n" : "");
+ create_buffer_from_data(line, debug_buffer_name, Buffer::Flags::NoUndo);
+ }
+}
+
}