diff --git a/output.c b/output.c index 19349aa..b37f3bc 100644 --- a/output.c +++ b/output.c @@ -781,17 +781,17 @@ XLUpdateSurfaceOutputs (Surface *surface, int x, int y, int width, int n, i; struct wl_resource *resource; - if (BoxContains (pixman_region32_extents (&surface->output_region), - x, y, width, height)) - /* The surface didn't move past the output region. */ - return; - if (width == -1) width = ViewWidth (surface->view); if (height == -1) height = ViewHeight (surface->view); + if (BoxContains (pixman_region32_extents (&surface->output_region), + x, y, width, height)) + /* The surface didn't move past the output region. */ + return; + /* TODO: store the number of outputs somewhere instead of hardcoding 256. */ n = ComputeSurfaceOutputs (x, y, width, height,