summaryrefslogtreecommitdiff
path: root/src/buffer_manager.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/buffer_manager.cc')
-rw-r--r--src/buffer_manager.cc10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/buffer_manager.cc b/src/buffer_manager.cc
index 14e6f723..d482f28a 100644
--- a/src/buffer_manager.cc
+++ b/src/buffer_manager.cc
@@ -42,7 +42,7 @@ void BufferManager::unregister_buffer(Buffer& buffer)
assert(false);
}
-Buffer* BufferManager::get_buffer(const String& name)
+Buffer* BufferManager::get_buffer_ifp(const String& name)
{
for (auto& buf : m_buffers)
{
@@ -52,6 +52,14 @@ Buffer* BufferManager::get_buffer(const String& name)
return nullptr;
}
+Buffer& BufferManager::get_buffer(const String& name)
+{
+ Buffer* res = get_buffer_ifp(name);
+ if (not res)
+ throw runtime_error("no such buffer '" + name + "'");
+ return *res;
+}
+
void BufferManager::set_last_used_buffer(Buffer& buffer)
{
auto it = m_buffers.begin();