diff options
Diffstat (limited to 'src/os/signal.c')
-rw-r--r-- | src/os/signal.c | 9 |
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); } |