diff options
Diffstat (limited to 'backend/drm/libliftoff.c')
-rw-r--r-- | backend/drm/libliftoff.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/backend/drm/libliftoff.c b/backend/drm/libliftoff.c index ecc79ce9..90525d24 100644 --- a/backend/drm/libliftoff.c +++ b/backend/drm/libliftoff.c @@ -177,6 +177,12 @@ static bool set_layer_props(struct wlr_drm_backend *drm, const struct wlr_output_layer_state *state, uint64_t zpos) { struct wlr_drm_layer *layer = get_drm_layer(drm, state->layer); + uint32_t width = 0, height = 0; + if (state->buffer != NULL) { + width = state->buffer->width; + height = state->buffer->height; + } + struct wlr_drm_fb *fb = layer->pending_fb; int ret = 0; if (state->buffer == NULL) { @@ -190,9 +196,6 @@ static bool set_layer_props(struct wlr_drm_backend *drm, return false; } - uint32_t width = layer->pending_width; - uint32_t height = layer->pending_height; - uint64_t crtc_x = (uint64_t)state->x; uint64_t crtc_y = (uint64_t)state->y; uint64_t crtc_w = (uint64_t)width; |