@@ -47,9 +47,6 @@ void wlr_backend_init(struct wlr_backend *backend,
4747void wlr_backend_finish (struct wlr_backend * backend ) {
4848 wlr_signal_emit_safe (& backend -> events .destroy , backend );
4949 wlr_allocator_destroy (backend -> allocator );
50- if (backend -> has_own_renderer ) {
51- wlr_renderer_destroy (backend -> renderer );
52- }
5350}
5451
5552bool wlr_backend_start (struct wlr_backend * backend ) {
@@ -71,33 +68,10 @@ void wlr_backend_destroy(struct wlr_backend *backend) {
7168 }
7269}
7370
74- static bool backend_create_renderer (struct wlr_backend * backend ) {
75- if (backend -> renderer != NULL ) {
76- return true;
77- }
78-
79- backend -> renderer = wlr_renderer_autocreate (backend );
80- if (backend -> renderer == NULL ) {
81- return false;
82- }
83-
84- backend -> has_own_renderer = true;
85- return true;
86- }
87-
8871struct wlr_renderer * wlr_backend_get_renderer (struct wlr_backend * backend ) {
8972 if (backend -> impl -> get_renderer ) {
9073 return backend -> impl -> get_renderer (backend );
9174 }
92- if (backend_get_buffer_caps (backend ) != 0 ) {
93- // If the backend is capable of presenting buffers, automatically create
94- // the renderer if necessary.
95- if (!backend_create_renderer (backend )) {
96- wlr_log (WLR_ERROR , "Failed to create backend renderer" );
97- return NULL ;
98- }
99- return backend -> renderer ;
100- }
10175 return NULL ;
10276}
10377
0 commit comments