wlr_scene: Fix texture reuse

Add private interface to ignore a buffer that's locking a client_buffer
for damage tracking. This should eventually be replaced by wlr_raster.
This commit is contained in:
Alexander Orzechowski 2022-11-08 11:55:05 -05:00 committed by Simon Ser
parent eec95e3d5e
commit ea40ba4f6a
3 changed files with 32 additions and 1 deletions

View file

@ -84,7 +84,7 @@ struct wlr_client_buffer *wlr_client_buffer_create(struct wlr_buffer *buffer,
bool wlr_client_buffer_apply_damage(struct wlr_client_buffer *client_buffer,
struct wlr_buffer *next, pixman_region32_t *damage) {
if (client_buffer->base.n_locks > 1) {
if (client_buffer->base.n_locks - client_buffer->n_ignore_locks > 1) {
// Someone else still has a reference to the buffer
return false;
}