diff --git a/src/compositor-drm.c b/src/compositor-drm.c index 9d293bc1..44413081 100644 --- a/src/compositor-drm.c +++ b/src/compositor-drm.c @@ -953,12 +953,15 @@ drm_output_prepare_cursor_view(struct weston_output *output_base, { struct drm_compositor *c = (struct drm_compositor *) output_base->compositor; + struct weston_buffer_viewport *viewport = &ev->surface->buffer_viewport; struct drm_output *output = (struct drm_output *) output_base; if (c->gbm == NULL) return NULL; if (output->base.transform != WL_OUTPUT_TRANSFORM_NORMAL) return NULL; + if (viewport->buffer.scale != output_base->current_scale) + return NULL; if (output->cursor_view) return NULL; if (ev->output_mask != (1u << output_base->id))