diff options
| author | Maxime Coste <mawww@kakoune.org> | 2017-08-23 13:22:23 +0700 |
|---|---|---|
| committer | Maxime Coste <mawww@kakoune.org> | 2017-08-23 13:33:13 +0700 |
| commit | f7bed9eb183def6ad1e96df96c13fd22551fbf42 (patch) | |
| tree | c7d6badd4c15c415bc2b81b179ee7a856bb259bb /src/client_manager.hh | |
| parent | 3efc406d571d651ed44b751eb798cc79a990c614 (diff) | |
Support specifying an exit status on `quit` commands
The current client exit status can be specified as an optional
parameter, is nothing is given the exit status will be 0.
Fixes #1230
Diffstat (limited to 'src/client_manager.hh')
| -rw-r--r-- | src/client_manager.hh | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/client_manager.hh b/src/client_manager.hh index 35a1376f..f0a3a59d 100644 --- a/src/client_manager.hh +++ b/src/client_manager.hh @@ -21,7 +21,8 @@ public: Client* create_client(std::unique_ptr<UserInterface>&& ui, EnvVarMap env_vars, StringView init_cmds, - Optional<BufferCoord> init_coord); + Optional<BufferCoord> init_coord, + Client::OnExitCallback on_exit); bool empty() const { return m_clients.empty(); } size_t count() const { return m_clients.size(); } @@ -39,7 +40,7 @@ public: Client* get_client_ifp(StringView name); Client& get_client(StringView name); bool validate_client_name(StringView name) const; - void remove_client(Client& client, bool graceful); + void remove_client(Client& client, bool graceful, int status); using ClientList = Vector<std::unique_ptr<Client>, MemoryDomain::Client>; using iterator = ClientList::const_iterator; |
