Currently, display_get_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. Signed-off-by: Armin Krezović <[email protected]> --- clients/window.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/clients/window.c b/clients/window.c index b5b598f..4de73ed 100644 --- a/clients/window.c +++ b/clients/window.c @@ -5845,6 +5845,9 @@ display_get_cairo_device(struct display *display) struct output * display_get_output(struct display *display) { + if (wl_list_empty(&display->output_list)) + return NULL; + return container_of(display->output_list.next, struct output, link); } -- 2.9.0 _______________________________________________ wayland-devel mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/wayland-devel
