diff options
author | Carsten Haitzler (Rasterman) <raster@rasterman.com> | 2019-09-27 19:29:14 +0100 |
---|---|---|
committer | Carsten Haitzler (Rasterman) <raster@rasterman.com> | 2019-09-27 19:29:14 +0100 |
commit | 6d8a1bd3fe9f66ebb749350882851d7247fc2eaa (patch) | |
tree | 65d43bc7ef5fe19b0c1bb2b1263e732c461fd99b | |
parent | fed69a7380a28aef8f00509c55ad35e477af13ca (diff) | |
download | enlightenment-6d8a1bd3fe9f66ebb749350882851d7247fc2eaa.tar.gz |
kill e process before alert in non-x uses
-rw-r--r-- | TODO | 2 | ||||
-rw-r--r-- | src/bin/e_start_main.c | 14 |
2 files changed, 11 insertions, 5 deletions
@@ -90,8 +90,6 @@ TODO: logging like tables, icons, timelines and graphs that can be output in text emulation and to screen - change eina log to go into here with eina_log_print_cb_set() ) -* crash alert: we have to kill e to get kms control which breaks gdb - * grab data then kill e then display results? * watchdog: add watchdog handling to e_start to detect a hung e * also detect if frames stop rendering but loop ok? * settings: config dialog redo and simplification diff --git a/src/bin/e_start_main.c b/src/bin/e_start_main.c index 6a762b75ab..ff94d56fa2 100644 --- a/src/bin/e_start_main.c +++ b/src/bin/e_start_main.c @@ -762,14 +762,22 @@ not_done: else r = 0; + /* kill e */ + if (!getenv("DISPLAY")) + { + kill(child, SIGKILL); + usleep(500000); + } + /* call e_alert */ r = _e_call_alert(child, sig, r, backtrace_str, remember_sigusr1); free(backtrace_str); - /* kill e */ - kill(child, SIGKILL); - + if (getenv("DISPLAY")) + { + kill(child, SIGKILL); + } if (WEXITSTATUS(r) == 1) restart = EINA_FALSE; } |