diff --git a/src/main.cc b/src/main.cc index 7ae2098f..43d97f52 100644 --- a/src/main.cc +++ b/src/main.cc @@ -912,7 +912,7 @@ int main(int argc, char* argv[]) set_signal_handler(SIGFPE, signal_handler); set_signal_handler(SIGQUIT, signal_handler); set_signal_handler(SIGTERM, signal_handler); - set_signal_handler(SIGPIPE, SIG_IGN); + set_signal_handler(SIGPIPE, [](int){}); set_signal_handler(SIGINT, [](int){}); set_signal_handler(SIGCHLD, [](int){}); diff --git a/src/shell_manager.cc b/src/shell_manager.cc index e774eb33..065a9f74 100644 --- a/src/shell_manager.cc +++ b/src/shell_manager.cc @@ -177,7 +177,6 @@ std::pair ShellManager::eval( Pipe child_stdin{not input.empty()}, child_stdout, child_stderr; pid_t pid = spawn_shell(m_shell.c_str(), cmdline, shell_context.params, kak_env, [&child_stdin, &child_stdout, &child_stderr] { - set_signal_handler(SIGPIPE, SIG_DFL); auto move = [](int oldfd, int newfd) { if (oldfd == newfd)