diff options
author | Hisham Muhammad <hisham@gobolinux.org> | 2015-10-06 12:50:31 -0300 |
---|---|---|
committer | Hisham Muhammad <hisham@gobolinux.org> | 2015-10-06 12:50:31 -0300 |
commit | 125c23ef23cabb1cd7aee25f01fb27061dd3864c (patch) | |
tree | a768532d4147527fc4e7ed7aa7e169911123b845 /SignalsPanel.c | |
parent | 3fe2f3e28ec183c4cbab112aaf3689ba843a5c5c (diff) |
Fix build in FreeBSD, and make sure SIGTERM is always the default.
Diffstat (limited to 'SignalsPanel.c')
-rw-r--r-- | SignalsPanel.c | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/SignalsPanel.c b/SignalsPanel.c index 6a3b89de..9816a848 100644 --- a/SignalsPanel.c +++ b/SignalsPanel.c @@ -14,6 +14,7 @@ in the source distribution for its full text. #include <stdlib.h> #include <assert.h> +#include <signal.h> #include <ctype.h> @@ -28,9 +29,16 @@ typedef struct SignalItem_ { Panel* SignalsPanel_new() { Panel* this = Panel_new(1, 1, 1, 1, true, Class(ListItem), FunctionBar_newEnterEsc("Send ", "Cancel ")); - for(unsigned int i = 0; i < Platform_numberOfSignals; i++) + const int defaultSignal = SIGTERM; + int defaultPosition = 15; + for(unsigned int i = 0; i < Platform_numberOfSignals; i++) { Panel_set(this, i, (Object*) ListItem_new(Platform_signals[i].name, Platform_signals[i].number)); + // signal 15 is not always the 15th signal in the table + if (Platform_signals[i].number == defaultSignal) { + defaultPosition = i; + } + } Panel_setHeader(this, "Send signal:"); - Panel_setSelected(this, 16); // 16th item is SIGTERM + Panel_setSelected(this, defaultPosition); return this; } |