diff options
| author | Maxime Coste <frrrwww@gmail.com> | 2015-10-08 20:05:47 +0100 |
|---|---|---|
| committer | Maxime Coste <frrrwww@gmail.com> | 2015-10-08 20:05:47 +0100 |
| commit | bd0117186128f8810fe602ee7fba2f71cefe89c1 (patch) | |
| tree | f364010b0c4aaeb3ce928e242cb1941ae75a304f /src/remote.cc | |
| parent | 7776c38755bfa4674b21989d7a7ef9561c02c366 (diff) | |
Auto fork server when suspending the local client
That way, other clients can still be serviced by the server.
Diffstat (limited to 'src/remote.cc')
| -rw-r--r-- | src/remote.cc | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/src/remote.cc b/src/remote.cc index 1e1edc23..b4201abc 100644 --- a/src/remote.cc +++ b/src/remote.cc @@ -631,11 +631,14 @@ Server::Server(String session_name) m_listener.reset(new FDWatcher{listen_sock, accepter}); } -void Server::close_session() +void Server::close_session(bool do_unlink) { - char socket_file[128]; - format_to(socket_file, "/tmp/kakoune/{}/{}", getpwuid(geteuid())->pw_name, m_session); - unlink(socket_file); + if (do_unlink) + { + char socket_file[128]; + format_to(socket_file, "/tmp/kakoune/{}/{}", getpwuid(geteuid())->pw_name, m_session); + unlink(socket_file); + } m_listener->close_fd(); m_listener.reset(); } |
