summaryrefslogtreecommitdiff
path: root/src/debug.cc
diff options
context:
space:
mode:
authorMaxime Coste <frrrwww@gmail.com>2014-01-23 19:21:00 +0000
committerMaxime Coste <frrrwww@gmail.com>2014-01-23 19:21:00 +0000
commitc0bc7b6644076d1cb6c387ef29a9ad3c8d8acd67 (patch)
tree9dca547e5d4d0de53cce44950a941ae23f8cd4f3 /src/debug.cc
parenta2ecca8d8ba83cdc0495077b00c87a29537b167b (diff)
write_debug: fallback to stderr if the BufferManager does not exists yet
fixes #40
Diffstat (limited to 'src/debug.cc')
-rw-r--r--src/debug.cc16
1 files changed, 8 insertions, 8 deletions
diff --git a/src/debug.cc b/src/debug.cc
index 61bc7116..7d68fb5b 100644
--- a/src/debug.cc
+++ b/src/debug.cc
@@ -7,8 +7,14 @@
namespace Kakoune
{
-static Buffer& get_or_create_debug_buffer()
+void write_debug(const String& str)
{
+ if (not BufferManager::has_instance())
+ {
+ fprintf(stderr, "%s\n", str.c_str());
+ return;
+ }
+
static const String debug_buffer_name("*debug*");
Buffer* buffer = BufferManager::instance().get_buffer_ifp(debug_buffer_name);
@@ -16,13 +22,7 @@ static Buffer& get_or_create_debug_buffer()
buffer = new Buffer(debug_buffer_name, Buffer::Flags::NoUndo);
kak_assert(buffer);
- return *buffer;
-}
-
-void write_debug(const String& str)
-{
- Buffer& buffer = get_or_create_debug_buffer();
- buffer.insert(buffer.end(), str);
+ buffer->insert(buffer->end(), str);
}
}