Rename set_signal_wrapper to set_signal_handler and tweak SignalHandler def

This commit is contained in:
Maxime Coste 2016-01-10 20:46:15 +00:00
parent 99c5b7e678
commit 032219b119
4 changed files with 22 additions and 22 deletions

View File

@ -133,7 +133,7 @@ void EventManager::force_signal(int fd)
FD_SET(fd, &m_forced_fd); FD_SET(fd, &m_forced_fd);
} }
SignalHandler set_signal_wrapper(int signum, SignalHandler handler) SignalHandler set_signal_handler(int signum, SignalHandler handler)
{ {
struct sigaction new_action, old_action; struct sigaction new_action, old_action;

View File

@ -14,8 +14,6 @@
namespace Kakoune namespace Kakoune
{ {
typedef void(*SignalHandler)(int);
enum class EventMode enum class EventMode
{ {
Normal, Normal,
@ -94,7 +92,9 @@ private:
TimePoint m_last; TimePoint m_last;
}; };
SignalHandler set_signal_wrapper(int signum, SignalHandler handler); using SignalHandler = void(*)(int);
SignalHandler set_signal_handler(int signum, SignalHandler handler);
} }

View File

@ -293,16 +293,16 @@ std::unique_ptr<UserInterface> create_local_ui(bool dummy_ui)
{ {
LocalUI() LocalUI()
{ {
m_old_sighup = set_signal_wrapper(SIGHUP, [](int) { m_old_sighup = set_signal_handler(SIGHUP, [](int) {
ClientManager::instance().remove_client(*local_client, false); ClientManager::instance().remove_client(*local_client, false);
}); });
m_old_sigtstp = set_signal_wrapper(SIGTSTP, [](int) { m_old_sigtstp = set_signal_handler(SIGTSTP, [](int) {
if (ClientManager::instance().count() == 1 and if (ClientManager::instance().count() == 1 and
*ClientManager::instance().begin() == local_client) *ClientManager::instance().begin() == local_client)
{ {
// Suspend normally if we are the only client // Suspend normally if we are the only client
auto current = set_signal_wrapper(SIGTSTP, static_cast<LocalUI&>(local_client->ui()).m_old_sigtstp); auto current = set_signal_handler(SIGTSTP, static_cast<LocalUI&>(local_client->ui()).m_old_sigtstp);
sigset_t unblock_sigtstp, old_mask; sigset_t unblock_sigtstp, old_mask;
sigemptyset(&unblock_sigtstp); sigemptyset(&unblock_sigtstp);
@ -313,7 +313,7 @@ std::unique_ptr<UserInterface> create_local_ui(bool dummy_ui)
sigprocmask(SIG_SETMASK, &old_mask, nullptr); sigprocmask(SIG_SETMASK, &old_mask, nullptr);
set_signal_wrapper(SIGTSTP, current); set_signal_handler(SIGTSTP, current);
} }
else else
convert_to_client_pending = true; convert_to_client_pending = true;
@ -322,8 +322,8 @@ std::unique_ptr<UserInterface> create_local_ui(bool dummy_ui)
~LocalUI() ~LocalUI()
{ {
set_signal_wrapper(SIGHUP, m_old_sighup); set_signal_handler(SIGHUP, m_old_sighup);
set_signal_wrapper(SIGTSTP, m_old_sigtstp); set_signal_handler(SIGTSTP, m_old_sigtstp);
local_client = nullptr; local_client = nullptr;
if (not convert_to_client_pending and if (not convert_to_client_pending and
not ClientManager::instance().empty()) not ClientManager::instance().empty())
@ -431,7 +431,7 @@ int run_server(StringView session, StringView init_command,
session, child)); session, child));
exit(0); exit(0);
} }
set_signal_wrapper(SIGTERM, [](int) { terminate = true; }); set_signal_handler(SIGTERM, [](int) { terminate = true; });
} }
StringRegistry string_registry; StringRegistry string_registry;
@ -661,13 +661,13 @@ int main(int argc, char* argv[])
{ {
setlocale(LC_ALL, ""); setlocale(LC_ALL, "");
set_signal_wrapper(SIGSEGV, signal_handler); set_signal_handler(SIGSEGV, signal_handler);
set_signal_wrapper(SIGFPE, signal_handler); set_signal_handler(SIGFPE, signal_handler);
set_signal_wrapper(SIGQUIT, signal_handler); set_signal_handler(SIGQUIT, signal_handler);
set_signal_wrapper(SIGTERM, signal_handler); set_signal_handler(SIGTERM, signal_handler);
set_signal_wrapper(SIGPIPE, SIG_IGN); set_signal_handler(SIGPIPE, SIG_IGN);
set_signal_wrapper(SIGINT, [](int){}); set_signal_handler(SIGINT, [](int){});
set_signal_wrapper(SIGCHLD, [](int){}); set_signal_handler(SIGCHLD, [](int){});
Vector<String> params; Vector<String> params;
for (size_t i = 1; i < argc; ++i) for (size_t i = 1; i < argc; ++i)

View File

@ -250,8 +250,8 @@ NCursesUI::NCursesUI()
enable_mouse(true); enable_mouse(true);
set_signal_wrapper(SIGWINCH, on_term_resize); set_signal_handler(SIGWINCH, on_term_resize);
set_signal_wrapper(SIGCONT, on_term_resize); set_signal_handler(SIGCONT, on_term_resize);
check_resize(true); check_resize(true);
@ -262,8 +262,8 @@ NCursesUI::~NCursesUI()
{ {
enable_mouse(false); enable_mouse(false);
endwin(); endwin();
set_signal_wrapper(SIGWINCH, SIG_DFL); set_signal_handler(SIGWINCH, SIG_DFL);
set_signal_wrapper(SIGCONT, SIG_DFL); set_signal_handler(SIGCONT, SIG_DFL);
} }
void NCursesUI::Window::create(const CharCoord& p, const CharCoord& s) void NCursesUI::Window::create(const CharCoord& p, const CharCoord& s)