89c2f637b9
When a window is being closed, the frame_done callback often runs after the output is already destroyed, i.e: wayland_output_start_repaint_loop input_handle_button wayland_output_destroy frame_done To fix this, destroy the callback before destroying the output. (Also, fix the type of output in frame_done: it's passed in a wayland_output, not a weston_output.) Signed-off-by: Dima Ryazanov <dima@gmail.com> Reviewed-by: Daniel Stone <daniels@collabora.com>