[PATCH weston 2/2] compositor-wayland: Check the return value of wayland_output_create_common

Armin Krezović krezovic.armin at gmail.com
Fri Mar 24 19:12:19 UTC 2017


On 24.03.2017 19:53, Sergi Granell wrote:
> If wayland_output_create_common returns NULL, it means that
> the output creation failed.
> 
> Signed-off-by: Sergi Granell <xerpi.g.12 at gmail.com>

While I think that splitting the definition and initialization
wasn't necessary, the fix is still correct. I did wish that
it was sent as a first patch, as it's trivial. At this point,
it depends on patch 1 from this series.

Still, have a:

Reviewed-by: Armin Krezović <krezovic.armin at gmail.com>

> ---
>   libweston/compositor-wayland.c | 15 +++++++++++++--
>   1 file changed, 13 insertions(+), 2 deletions(-)
> 
> diff --git a/libweston/compositor-wayland.c b/libweston/compositor-wayland.c
> index 41834692..c8eceee7 100644
> --- a/libweston/compositor-wayland.c
> +++ b/libweston/compositor-wayland.c
> @@ -1261,6 +1261,9 @@ wayland_output_create(struct weston_compositor *compositor, const char *name)
>   {
>   	struct wayland_output *output = wayland_output_create_common(name);
>   
> +	if (!output)
> +		return -1;
> +
>   	weston_output_init(&output->base, compositor);
>   	weston_compositor_add_pending_output(&output->base, compositor);
>   
> @@ -1319,9 +1322,13 @@ static int
>   wayland_output_create_for_parent_output(struct wayland_backend *b,
>   					struct wayland_parent_output *poutput)
>   {
> -	struct wayland_output *output = wayland_output_create_common("wlparent");
> +	struct wayland_output *output;
>   	struct weston_mode *mode;
>   
> +	output = wayland_output_create_common("wlparent");
> +	if (!output)
> +		return -1;
> +
>   	if (poutput->current_mode) {
>   		mode = poutput->current_mode;
>   	} else if (poutput->preferred_mode) {
> @@ -1367,9 +1374,13 @@ out:
>   static int
>   wayland_output_create_fullscreen(struct wayland_backend *b)
>   {
> -	struct wayland_output *output = wayland_output_create_common("wayland-fullscreen");
> +	struct wayland_output *output;
>   	int width = 0, height = 0;
>   
> +	output = wayland_output_create_common("wayland-fullscreen");
> +	if (!output)
> +		return -1;
> +
>   	weston_output_init(&output->base, b->compositor);
>   
>   	output->base.scale = 1;
> 



More information about the wayland-devel mailing list