Destroy x11 output with backend
This commit is contained in:
parent
c97b5ac4ce
commit
2c63aa2056
|
@ -298,6 +298,9 @@ static void wlr_x11_backend_destroy(struct wlr_backend *backend) {
|
||||||
|
|
||||||
struct wlr_x11_backend *x11 = (struct wlr_x11_backend *)backend;
|
struct wlr_x11_backend *x11 = (struct wlr_x11_backend *)backend;
|
||||||
|
|
||||||
|
struct wlr_x11_output *output = &x11->output;
|
||||||
|
wlr_output_destroy(&output->wlr_output);
|
||||||
|
|
||||||
wl_event_source_remove(x11->frame_timer);
|
wl_event_source_remove(x11->frame_timer);
|
||||||
wlr_egl_free(&x11->egl);
|
wlr_egl_free(&x11->egl);
|
||||||
|
|
||||||
|
@ -331,7 +334,7 @@ static void output_destroy(struct wlr_output *wlr_output) {
|
||||||
|
|
||||||
eglDestroySurface(x11->egl.display, output->surf);
|
eglDestroySurface(x11->egl.display, output->surf);
|
||||||
xcb_destroy_window(x11->xcb_conn, output->win);
|
xcb_destroy_window(x11->xcb_conn, output->win);
|
||||||
free(wlr_output);
|
// output has been allocated on the stack, do not free it
|
||||||
}
|
}
|
||||||
|
|
||||||
static void output_make_current(struct wlr_output *wlr_output) {
|
static void output_make_current(struct wlr_output *wlr_output) {
|
||||||
|
|
|
@ -100,9 +100,9 @@ struct wlr_cursor *wlr_cursor_create() {
|
||||||
|
|
||||||
static void output_cursor_remove(
|
static void output_cursor_remove(
|
||||||
struct wlr_cursor_output_cursor *output_cursor) {
|
struct wlr_cursor_output_cursor *output_cursor) {
|
||||||
|
wl_list_remove(&output_cursor->layout_output_destroy.link);
|
||||||
wl_list_remove(&output_cursor->link);
|
wl_list_remove(&output_cursor->link);
|
||||||
wlr_output_cursor_destroy(output_cursor->output_cursor);
|
wlr_output_cursor_destroy(output_cursor->output_cursor);
|
||||||
wl_list_remove(&output_cursor->layout_output_destroy.link);
|
|
||||||
free(output_cursor);
|
free(output_cursor);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue