aboutsummaryrefslogtreecommitdiff
path: root/backend/drm/atomic.c
diff options
context:
space:
mode:
Diffstat (limited to 'backend/drm/atomic.c')
-rw-r--r--backend/drm/atomic.c9
1 files changed, 3 insertions, 6 deletions
diff --git a/backend/drm/atomic.c b/backend/drm/atomic.c
index 4c95a3bb..7c5fc0ba 100644
--- a/backend/drm/atomic.c
+++ b/backend/drm/atomic.c
@@ -144,15 +144,12 @@ bool create_gamma_lut_blob(struct wlr_drm_backend *drm,
}
bool create_fb_damage_clips_blob(struct wlr_drm_backend *drm,
- struct wlr_drm_fb *fb, const pixman_region32_t *damage, uint32_t *blob_id) {
+ int width, int height, const pixman_region32_t *damage, uint32_t *blob_id) {
if (!pixman_region32_not_empty(damage)) {
*blob_id = 0;
return true;
}
- int width = fb->wlr_buf->width;
- int height = fb->wlr_buf->height;
-
pixman_region32_t clipped;
pixman_region32_init(&clipped);
pixman_region32_intersect_rect(&clipped, damage, 0, 0, width, height);
@@ -298,8 +295,8 @@ static bool atomic_crtc_commit(struct wlr_drm_connector *conn,
uint32_t fb_damage_clips = 0;
if ((state->base->committed & WLR_OUTPUT_STATE_DAMAGE) &&
crtc->primary->props.fb_damage_clips != 0) {
- create_fb_damage_clips_blob(drm, state->primary_fb,
- &state->base->damage, &fb_damage_clips);
+ create_fb_damage_clips_blob(drm, state->primary_fb->wlr_buf->width,
+ state->primary_fb->wlr_buf->height, &state->base->damage, &fb_damage_clips);
}
bool prev_vrr_enabled =