raster pushed a commit to branch master. http://git.enlightenment.org/core/enlightenment.git/commit/?id=6d8a1bd3fe9f66ebb749350882851d7247fc2eaa
commit 6d8a1bd3fe9f66ebb749350882851d7247fc2eaa Author: Carsten Haitzler (Rasterman) <[email protected]> Date: Fri Sep 27 19:29:14 2019 +0100 kill e process before alert in non-x uses --- TODO | 2 -- src/bin/e_start_main.c | 14 +++++++++++--- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/TODO b/TODO index dfa52b873..6e236ad0f 100644 --- a/TODO +++ b/TODO @@ -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 6a762b75a..ff94d56fa 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; } --
