mirror of
https://github.com/cage-kiosk/cage.git
synced 2025-10-29 05:40:19 -04:00
parent
f33fe5d6f2
commit
bb5d4cf52e
1 changed files with 5 additions and 0 deletions
5
cage.c
5
cage.c
|
|
@ -97,6 +97,8 @@ handle_signal(int signal, void *data)
|
||||||
case SIGINT:
|
case SIGINT:
|
||||||
/* Fallthrough */
|
/* Fallthrough */
|
||||||
case SIGTERM:
|
case SIGTERM:
|
||||||
|
/* Fallthrough */
|
||||||
|
case SIGCHLD:
|
||||||
wl_display_terminate(display);
|
wl_display_terminate(display);
|
||||||
return 0;
|
return 0;
|
||||||
default:
|
default:
|
||||||
|
|
@ -172,6 +174,7 @@ main(int argc, char *argv[])
|
||||||
struct wl_event_loop *event_loop = NULL;
|
struct wl_event_loop *event_loop = NULL;
|
||||||
struct wl_event_source *sigint_source = NULL;
|
struct wl_event_source *sigint_source = NULL;
|
||||||
struct wl_event_source *sigterm_source = NULL;
|
struct wl_event_source *sigterm_source = NULL;
|
||||||
|
struct wl_event_source *sigchld_source = NULL;
|
||||||
struct wlr_renderer *renderer = NULL;
|
struct wlr_renderer *renderer = NULL;
|
||||||
struct wlr_compositor *compositor = NULL;
|
struct wlr_compositor *compositor = NULL;
|
||||||
struct wlr_data_device_manager *data_device_manager = NULL;
|
struct wlr_data_device_manager *data_device_manager = NULL;
|
||||||
|
|
@ -213,6 +216,7 @@ main(int argc, char *argv[])
|
||||||
event_loop = wl_display_get_event_loop(server.wl_display);
|
event_loop = wl_display_get_event_loop(server.wl_display);
|
||||||
sigint_source = wl_event_loop_add_signal(event_loop, SIGINT, handle_signal, &server.wl_display);
|
sigint_source = wl_event_loop_add_signal(event_loop, SIGINT, handle_signal, &server.wl_display);
|
||||||
sigterm_source = wl_event_loop_add_signal(event_loop, SIGTERM, handle_signal, &server.wl_display);
|
sigterm_source = wl_event_loop_add_signal(event_loop, SIGTERM, handle_signal, &server.wl_display);
|
||||||
|
sigchld_source = wl_event_loop_add_signal(event_loop, SIGCHLD, handle_signal, &server.wl_display);
|
||||||
|
|
||||||
server.backend = wlr_backend_autocreate(server.wl_display, NULL);
|
server.backend = wlr_backend_autocreate(server.wl_display, NULL);
|
||||||
if (!server.backend) {
|
if (!server.backend) {
|
||||||
|
|
@ -424,6 +428,7 @@ main(int argc, char *argv[])
|
||||||
end:
|
end:
|
||||||
wl_event_source_remove(sigint_source);
|
wl_event_source_remove(sigint_source);
|
||||||
wl_event_source_remove(sigterm_source);
|
wl_event_source_remove(sigterm_source);
|
||||||
|
wl_event_source_remove(sigchld_source);
|
||||||
seat_destroy(server.seat);
|
seat_destroy(server.seat);
|
||||||
wlr_output_layout_destroy(server.output_layout);
|
wlr_output_layout_destroy(server.output_layout);
|
||||||
/* This function is not null-safe, but we only ever get here
|
/* This function is not null-safe, but we only ever get here
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue