]> git.mdlowis.com Git - proto/labwc.git/commitdiff
server: refactor server_finish()
authorJohan Malm <jgm323@gmail.com>
Thu, 22 Oct 2020 18:54:30 +0000 (19:54 +0100)
committerJohan Malm <jgm323@gmail.com>
Thu, 22 Oct 2020 18:54:45 +0000 (19:54 +0100)
src/seat.c
src/server.c

index 137a53181480d96b0730c46e0bdb4ac7b5c6c39c..dcfff4b72befeeb9fd20107e967a5b670dfe8af4 100644 (file)
@@ -111,7 +111,6 @@ seat_finish(struct server *server)
        }
        wlr_xcursor_manager_destroy(seat->xcursor_manager);
        wlr_cursor_destroy(seat->cursor);
-       wlr_seat_destroy(server->seat.seat);
 }
 
 void
index 4d2a5cd8815f288db36669905a51d58fb8f82e14..65b400e9f29940215274c4ebe8d945d93de278a3 100644 (file)
@@ -206,15 +206,20 @@ server_start(struct server *server)
 void
 server_finish(struct server *server)
 {
-       struct output *o, *o_tmp;
-       wl_list_for_each_safe (o, o_tmp, &server->outputs, link) {
-               wl_list_remove(&o->link);
-               free(o);
-       }
-       wlr_output_layout_destroy(server->output_layout);
-       seat_finish(server);
        wlr_xwayland_destroy(server->xwayland);
        wl_event_source_remove(sighup_source);
        wl_display_destroy_clients(server->wl_display);
+
+       seat_finish(server);
+
        wl_display_destroy(server->wl_display);
+
+       struct output *output, *next;
+       wl_list_for_each_safe (output, next, &server->outputs, link) {
+               info("remove output %p", output);
+               wl_list_remove(&output->link);
+               free(output);
+       }
+
+       wlr_output_layout_destroy(server->output_layout);
 }