mirror of
https://github.com/gryf/wmaker.git
synced 2025-12-21 05:18:06 +01:00
- SIGTERM is now handled and saves the internal state before exiting (like
SIGHUP and SIGINT already do). Now a "kill wmaker_pid" will exit cleanly saving dock/clip/session information on exit.
This commit is contained in:
@@ -13,6 +13,9 @@ Changes since version 0.70.0:
|
|||||||
- Fixed WPrefs crash when clicking on the menu editor to keep the current menu
|
- Fixed WPrefs crash when clicking on the menu editor to keep the current menu
|
||||||
(Alexey Voinov <voins@voins.program.ru>)
|
(Alexey Voinov <voins@voins.program.ru>)
|
||||||
- Added patch to fix some gnome issues (Les Schaffer <schaffer@optonline.net>)
|
- Added patch to fix some gnome issues (Les Schaffer <schaffer@optonline.net>)
|
||||||
|
- SIGTERM is now handled and saves the internal state before exiting (like
|
||||||
|
SIGHUP and SIGINT already do). Now a "kill wmaker_pid" will exit cleanly
|
||||||
|
saving dock/clip/session information on exit.
|
||||||
|
|
||||||
|
|
||||||
Changes since version 0.65.1:
|
Changes since version 0.65.1:
|
||||||
|
|||||||
@@ -279,7 +279,7 @@ handleExitSig(int sig)
|
|||||||
* the select() is returned becaused of the signal, even if
|
* the select() is returned becaused of the signal, even if
|
||||||
* there are no X events in the queue */
|
* there are no X events in the queue */
|
||||||
WDelayedActionSet++;
|
WDelayedActionSet++;
|
||||||
} else if (sig == SIGINT || sig == SIGHUP) {
|
} else if (sig==SIGTERM || sig==SIGINT || sig==SIGHUP) {
|
||||||
#ifdef SYS_SIGLIST_DECLARED
|
#ifdef SYS_SIGLIST_DECLARED
|
||||||
wwarning(_("got signal %i (%s) - exiting...\n"), sig, sys_siglist[sig]);
|
wwarning(_("got signal %i (%s) - exiting...\n"), sig, sys_siglist[sig]);
|
||||||
#else
|
#else
|
||||||
@@ -842,10 +842,9 @@ StartUp(Bool defaultScreenOnly)
|
|||||||
sig_action.sa_handler = handleExitSig;
|
sig_action.sa_handler = handleExitSig;
|
||||||
|
|
||||||
/* Here we set SA_RESTART for safety, because SIGUSR1 may not be handled
|
/* Here we set SA_RESTART for safety, because SIGUSR1 may not be handled
|
||||||
* immediately.
|
* immediately. -Dan */
|
||||||
* -Dan */
|
|
||||||
sig_action.sa_flags = SA_RESTART;
|
sig_action.sa_flags = SA_RESTART;
|
||||||
/* sigaction(SIGTERM, &sig_action, NULL);*/
|
sigaction(SIGTERM, &sig_action, NULL);
|
||||||
sigaction(SIGINT, &sig_action, NULL);
|
sigaction(SIGINT, &sig_action, NULL);
|
||||||
sigaction(SIGHUP, &sig_action, NULL);
|
sigaction(SIGHUP, &sig_action, NULL);
|
||||||
sigaction(SIGUSR1, &sig_action, NULL);
|
sigaction(SIGUSR1, &sig_action, NULL);
|
||||||
|
|||||||
Reference in New Issue
Block a user