aboutsummaryrefslogtreecommitdiff
path: root/src/os/signal.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/os/signal.c')
-rw-r--r--src/os/signal.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/src/os/signal.c b/src/os/signal.c
index 503269208d..dc404a6e99 100644
--- a/src/os/signal.c
+++ b/src/os/signal.c
@@ -69,9 +69,7 @@ void signal_accept_deadly()
void signal_handle(Event event)
{
- int signum = *(int *)event.data;
-
- free(event.data);
+ int signum = event.data.signum;
switch (signum) {
case SIGINT:
@@ -157,8 +155,9 @@ static void signal_cb(uv_signal_t *handle, int signum)
Event event = {
.type = kEventSignal,
- .data = xmalloc(sizeof(int))
+ .data = {
+ .signum = signum
+ }
};
- *(int *)event.data = signum;
event_push(event);
}