mirror of
https://gitlab.freedesktop.org/wlroots/wlroots.git
synced 2025-11-04 13:29:45 -05:00
backend: don't create renderer if none is available
This commit is contained in:
parent
1b736ef7df
commit
d2094ed473
2 changed files with 0 additions and 28 deletions
|
|
@ -47,9 +47,6 @@ void wlr_backend_init(struct wlr_backend *backend,
|
|||
void wlr_backend_finish(struct wlr_backend *backend) {
|
||||
wlr_signal_emit_safe(&backend->events.destroy, backend);
|
||||
wlr_allocator_destroy(backend->allocator);
|
||||
if (backend->has_own_renderer) {
|
||||
wlr_renderer_destroy(backend->renderer);
|
||||
}
|
||||
}
|
||||
|
||||
bool wlr_backend_start(struct wlr_backend *backend) {
|
||||
|
|
@ -71,33 +68,10 @@ void wlr_backend_destroy(struct wlr_backend *backend) {
|
|||
}
|
||||
}
|
||||
|
||||
static bool backend_create_renderer(struct wlr_backend *backend) {
|
||||
if (backend->renderer != NULL) {
|
||||
return true;
|
||||
}
|
||||
|
||||
backend->renderer = wlr_renderer_autocreate(backend);
|
||||
if (backend->renderer == NULL) {
|
||||
return false;
|
||||
}
|
||||
|
||||
backend->has_own_renderer = true;
|
||||
return true;
|
||||
}
|
||||
|
||||
struct wlr_renderer *wlr_backend_get_renderer(struct wlr_backend *backend) {
|
||||
if (backend->impl->get_renderer) {
|
||||
return backend->impl->get_renderer(backend);
|
||||
}
|
||||
if (backend_get_buffer_caps(backend) != 0) {
|
||||
// If the backend is capable of presenting buffers, automatically create
|
||||
// the renderer if necessary.
|
||||
if (!backend_create_renderer(backend)) {
|
||||
wlr_log(WLR_ERROR, "Failed to create backend renderer");
|
||||
return NULL;
|
||||
}
|
||||
return backend->renderer;
|
||||
}
|
||||
return NULL;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -28,8 +28,6 @@ struct wlr_backend {
|
|||
|
||||
// Private state
|
||||
|
||||
bool has_own_renderer;
|
||||
struct wlr_renderer *renderer;
|
||||
struct wlr_allocator *allocator;
|
||||
};
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue