libweston: Init weston_output's 'destroy_signal' before timeline has a chance to emit a

timeline subscription

When subscribing over the command line to the 'timeline' scope we hit
the situation where we could emit a timeline message but without the
weston_output object being (fully) enabled.  The timeline subscription
object requires to install its own callback on the 'destroy_signal' but
at that time, the 'destroy_signal' is not initialized.

This moves 'destroy_signal' initialization before timeline has a chance
to emit a timeline subscription message for that weston_output.

While at it, move also 'frame_signal' initialization before any function
call to keep them nicely organized.

Signed-off-by: Marius Vlad <marius.vlad@collabora.com>
dev
Marius Vlad 5 years ago
parent 91dffa37a6
commit 3a2f829983
  1. 5
      libweston/compositor.c

@ -6225,14 +6225,15 @@ weston_output_enable(struct weston_output *output)
output->dirty = 1;
output->original_scale = output->scale;
wl_signal_init(&output->frame_signal);
wl_signal_init(&output->destroy_signal);
weston_output_transform_scale_init(output, output->transform, output->scale);
weston_output_init_zoom(output);
weston_output_init_geometry(output, x, y);
weston_output_damage(output);
wl_signal_init(&output->frame_signal);
wl_signal_init(&output->destroy_signal);
wl_list_init(&output->animation_list);
wl_list_init(&output->feedback_list);

Loading…
Cancel
Save