compositor: Always set output_mask in weston_surface_update_output_mask().

Commit 982387011 causes a bug where starting weston results in a black screen
(if no clients are immediately started). The problem is that the offending
commit causes the compositor to not damage if a surface has an empty output
mask, which is the case for the fade surface, which is created by the
compositor.  This patch updates the surface output_mask unconditionally,
and only skips sending out the events if there no client.
dev
Scott Moreau 13 years ago committed by Kristian Høgsberg
parent 61f00f52fa
commit a5021521f1
  1. 2
      src/compositor.c

@ -1349,12 +1349,12 @@ weston_surface_update_output_mask(struct weston_surface *es, uint32_t mask)
struct wl_resource *resource = NULL; struct wl_resource *resource = NULL;
struct wl_client *client = es->surface.resource.client; struct wl_client *client = es->surface.resource.client;
es->output_mask = mask;
if (es->surface.resource.client == NULL) if (es->surface.resource.client == NULL)
return; return;
if (different == 0) if (different == 0)
return; return;
es->output_mask = mask;
wl_list_for_each(output, &es->compositor->output_list, link) { wl_list_for_each(output, &es->compositor->output_list, link) {
if (1 << output->id & different) if (1 << output->id & different)
resource = resource =

Loading…
Cancel
Save