diff options
| author | Maxime Coste <frrrwww@gmail.com> | 2016-09-06 22:46:27 +0100 |
|---|---|---|
| committer | Maxime Coste <frrrwww@gmail.com> | 2016-09-06 22:46:27 +0100 |
| commit | c63c92cbf714dc14aa96e4b1a048d4f1132306b6 (patch) | |
| tree | c8a83bbdbc1adf16e3aef5e271ba3591269e7474 /src | |
| parent | c1d7f79a52b3fe1198574c017ac6a2eb6ceac0c6 (diff) | |
Support kill session inside init command
Diffstat (limited to 'src')
| -rw-r--r-- | src/main.cc | 36 |
1 files changed, 18 insertions, 18 deletions
diff --git a/src/main.cc b/src/main.cc index dbaae037..0049f6be 100644 --- a/src/main.cc +++ b/src/main.cc @@ -557,28 +557,28 @@ int run_server(StringView session, StringView init_command, else buffer_manager.create_buffer("*scratch*", Buffer::Flags::None); - if (not daemon) + try { - local_client = client_manager.create_client( - create_local_ui(ui_type), get_env_vars(), init_command); - - if (local_client) + if (not daemon) { - auto& selections = local_client->context().selections_write_only(); - auto& buffer = selections.buffer(); - selections = SelectionList(buffer, buffer.clamp(target_coord)); - local_client->context().window().center_line(target_coord.line); - - if (startup_error) - local_client->print_status({ - "error during startup, see *debug* buffer for details", - get_face("Error") - }); + local_client = client_manager.create_client( + create_local_ui(ui_type), get_env_vars(), init_command); + + if (local_client) + { + auto& selections = local_client->context().selections_write_only(); + auto& buffer = selections.buffer(); + selections = SelectionList(buffer, buffer.clamp(target_coord)); + local_client->context().window().center_line(target_coord.line); + + if (startup_error) + local_client->print_status({ + "error during startup, see *debug* buffer for details", + get_face("Error") + }); + } } - } - try - { while (not terminate and (not client_manager.empty() or daemon)) { client_manager.redraw_clients(); |
