diff options
| -rw-r--r-- | src/signal.c | 7 | ||||
| -rw-r--r-- | src/signal.h | 5 |
2 files changed, 7 insertions, 5 deletions
diff --git a/src/signal.c b/src/signal.c index ad9c59d..f7ebd6d 100644 --- a/src/signal.c +++ b/src/signal.c @@ -8,17 +8,18 @@ static void signal_callback(struct ev_loop *loop, ev_async *w, s32 revents) signal->callback(signal->userdata); } -void aki_signal_init(struct aki_signal *signal, void (*callback)(void *), void *userdata) +void aki_signal_init(struct aki_signal *signal, struct aki_event_loop *loop, + void (*callback)(void *), void *userdata) { + signal->loop = loop; signal->callback = callback; signal->userdata = userdata; signal->signal.data = signal; ev_async_init(&signal->signal, signal_callback); } -void aki_signal_start(struct aki_signal *signal, struct aki_event_loop *loop) +void aki_signal_start(struct aki_signal *signal) { - signal->loop = loop; ev_async_start(signal->loop->ev, &signal->signal); } diff --git a/src/signal.h b/src/signal.h index 46bbbdb..9423432 100644 --- a/src/signal.h +++ b/src/signal.h @@ -9,7 +9,8 @@ struct aki_signal { void *userdata; }; -void aki_signal_init(struct aki_signal *signal, void (*callback)(void *), void *userdata); -void aki_signal_start(struct aki_signal *signal, struct aki_event_loop *loop); +void aki_signal_init(struct aki_signal *signal, struct aki_event_loop *loop, + void (*callback)(void *), void *userdata); +void aki_signal_start(struct aki_signal *signal); void aki_signal_send(struct aki_signal *signal); void aki_signal_stop(struct aki_signal *signal); |