aboutsummaryrefslogtreecommitdiff
path: root/rootston
diff options
context:
space:
mode:
authoremersion <contact@emersion.fr>2018-06-13 19:38:10 +0100
committeremersion <contact@emersion.fr>2018-06-13 19:38:10 +0100
commit0378d143d9517c7508b64b81e9267a29ab1951aa (patch)
treec34ebe66d720c4c47278a0b39dd74332890b2588 /rootston
parentd643361c48231305b8d8a4d93772d1e2c14382a7 (diff)
surface: remove wlr_surface.texture
The texture is managed by the surface's wlr_buffer now. In particular, the buffer can destroy the texture early if it becomes invalid.
Diffstat (limited to 'rootston')
-rw-r--r--rootston/output.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/rootston/output.c b/rootston/output.c
index faa808d1..353d431f 100644
--- a/rootston/output.c
+++ b/rootston/output.c
@@ -189,7 +189,8 @@ static void render_surface(struct wlr_surface *surface, int sx, int sy,
struct roots_output *output = data->output;
float rotation = data->layout.rotation;
- if (!wlr_surface_has_buffer(surface)) {
+ struct wlr_texture *texture = wlr_surface_get_texture(surface);
+ if (texture == NULL) {
return;
}
@@ -230,8 +231,7 @@ static void render_surface(struct wlr_surface *surface, int sx, int sy,
pixman_box32_t *rects = pixman_region32_rectangles(&damage, &nrects);
for (int i = 0; i < nrects; ++i) {
scissor_output(output, &rects[i]);
- wlr_render_texture_with_matrix(renderer, surface->texture, matrix,
- data->alpha);
+ wlr_render_texture_with_matrix(renderer, texture, matrix, data->alpha);
}
damage_finish: