Fix for errant SIGHUPs due to child fish shells messing with the term.

Fixes https://github.com/fish-shell/fish-shell/issues/1002
This commit is contained in:
ridiculousfish
2013-10-26 15:22:20 -07:00
parent e204ced1ae
commit e05743d0ba
3 changed files with 19 additions and 2 deletions

View File

@@ -389,7 +389,6 @@ int main(int argc, char **argv)
set_main_thread();
setup_fork_guards();
save_term_foreground_process_group();
wsetlocale(LC_ALL, L"");
is_interactive_session=1;
@@ -410,6 +409,12 @@ int main(int argc, char **argv)
no_exec = 0;
}
/* Only save (and therefore restore) the fg process group if we are interactive. See #197, #1002 */
if (is_interactive_session)
{
save_term_foreground_process_group();
}
const struct config_paths_t paths = determine_config_directory_paths(argv[0]);
proc_init();
@@ -511,6 +516,7 @@ int main(int argc, char **argv)
proc_fire_event(L"PROCESS_EXIT", EVENT_EXIT, getpid(), res);
restore_term_mode();
restore_term_foreground_process_group();
history_destroy();
proc_destroy();