diff options
| author | Maxime Coste <frrrwww@gmail.com> | 2014-08-12 19:24:09 +0100 |
|---|---|---|
| committer | Maxime Coste <frrrwww@gmail.com> | 2014-08-12 19:24:09 +0100 |
| commit | 2204b7cf0667cc1124606c9882aba82dcf650fc3 (patch) | |
| tree | 8a892df4dbf8cacc8178f12ced9a61570e463750 /src/client_manager.cc | |
| parent | e2b3dd0ca4b71fd7cfcceeba35b97497631e72bd (diff) | |
Defer deletion of buffers to after the event loop
We can have SelectionList in flights on the buffer, so mark
it for deletion by moving it in a buffer trash, and effectively
delete it later, at a point where there should not be any further
access to it.
Diffstat (limited to 'src/client_manager.cc')
| -rw-r--r-- | src/client_manager.cc | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/client_manager.cc b/src/client_manager.cc index ac9c8452..3c1fb086 100644 --- a/src/client_manager.cc +++ b/src/client_manager.cc @@ -170,6 +170,12 @@ void ClientManager::redraw_clients() const client->redraw_ifn(); } +void ClientManager::clear_mode_trashes() const +{ + for (auto& client : m_clients) + client->input_handler().clear_mode_trash(); +} + CandidateList ClientManager::complete_client_name(StringView prefix, ByteCount cursor_pos) const { |
