0135abee89
After the compositor exits the main loop in wl_display_run(), set the compositor state to SLEEPING. This prevents scheduling repaints, that will never be executed. A repaint is scheduled by calling wl_event_loop_add_idle(), which creates an idle event source. Normally the idle event source object is destroyed after it has been executed. However, in the shutdown case we never dispatch events again, and the object is leaked. This leak is triggered by shell.c destructor, which destroys the desktop-shell client. Destroying a client ends up calling wlsc_compositor_schedule_repaint() while destroying the client resources, especially surfaces. Signed-off-by: Pekka Paalanen <ppaalanen@gmail.com> |
||
---|---|---|
clients | ||
compositor | ||
data | ||
protocol | ||
shared | ||
.gitignore | ||
autogen.sh | ||
configure.ac | ||
Makefile.am | ||
README | ||
wayland-desktop-shell.ini | ||
wayland-tablet-shell.ini |
Wayland Demos This repository contains a few demos application for the Wayland project. There's a sample compositor that can run on KMS, under X11 or under another Wayland compositor and there's a handful of simple clients that demonstrate various aspects of Wayland: