Currently, get_default_output returns a first member of the linked list, which can never be NULL.
This is problematic, as the function would return a dangling pointer and NULL pointer checks wouldn't work where needed and some of the invalid members would get accessed that way, resulting in a crash. Reviewed-by: Quentin Glidic <sardemff7+...@sardemff7.net> Reviewed-by: Pekka Paalanen <pekka.paala...@collabora.co.uk> Signed-off-by: Armin Krezović <krezovic.ar...@gmail.com> --- desktop-shell/shell.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/desktop-shell/shell.c b/desktop-shell/shell.c index 79cf8dd..c48d41a 100644 --- a/desktop-shell/shell.c +++ b/desktop-shell/shell.c @@ -688,6 +688,9 @@ shell_configuration(struct desktop_shell *shell) struct weston_output * get_default_output(struct weston_compositor *compositor) { + if (wl_list_empty(&compositor->output_list)) + return NULL; + return container_of(compositor->output_list.next, struct weston_output, link); } -- 2.9.0 _______________________________________________ wayland-devel mailing list wayland-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/wayland-devel