diff options
author | Brian Ashworth <[email protected]> | 2018-08-01 23:54:40 -0400 |
---|---|---|
committer | Brian Ashworth <[email protected]> | 2018-08-03 10:37:35 -0400 |
commit | f9a6407111a8730df51258c3b07502814a8ab3e1 (patch) | |
tree | 6cf180159caf4a45a8f37b026b2769d24468a07b /sway/main.c | |
parent | 3e2bf7f3a550db995a38808e0abd53fefab96f80 (diff) |
Show swaynag on config errors
Diffstat (limited to 'sway/main.c')
-rw-r--r-- | sway/main.c | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/sway/main.c b/sway/main.c index 477ffa5a..de2445a8 100644 --- a/sway/main.c +++ b/sway/main.c @@ -415,12 +415,14 @@ int main(int argc, char **argv) { ipc_init(&server); log_env(); + char *errors = NULL; if (validate) { - bool valid = load_main_config(config_path, false); + bool valid = load_main_config(config_path, false, &errors); + free(errors); return valid ? 0 : 1; } - if (!load_main_config(config_path, false)) { + if (!load_main_config(config_path, false, &errors)) { sway_terminate(EXIT_FAILURE); } @@ -433,6 +435,7 @@ int main(int argc, char **argv) { setenv("WAYLAND_DISPLAY", server.socket, true); if (!terminate_request) { if (!server_start_backend(&server)) { + free(errors); sway_terminate(EXIT_FAILURE); } } @@ -452,6 +455,11 @@ int main(int argc, char **argv) { } transaction_commit_dirty(); + if (errors) { + spawn_swaynag_config_errors(config, errors); + free(errors); + } + if (!terminate_request) { server_run(&server); } |