[Xcb] [PATCH xcb-util-image] Fix compilation when NDEBUG is defined

Jon TURNEY jon.turney at dronecode.org.uk
Wed Jan 30 05:56:21 PST 2013


On 20/12/2012 22:56, Jon TURNEY wrote:
> XORG_DEFAULT_OPTIONS enables -Werror=return-type
> 
> xcb_image_get_pixel() and xcb_image_create_native() assume assert(0) is
> noreturn, and don't return a value in that case.  But assert(0) isn't noreturn
> if NDEBUG is defined.
> 
> Fix this by returning a suitable value.
> 
> (Also, on the MinGW target, assert(0) is non-standard and may return even in the
> !NDEBUG case, as the C runtime may ask the user if they want to abort or not...)
> 
> /jhbuild/checkout/xcb/xcb-util-image/image/xcb_image.c: In function 'xcb_image_get_pixel':
> /jhbuild/checkout/xcb/xcb-util-image/image/xcb_image.c:754:1: error: control reaches end of non-void function [-Wreturn-type]
> /jhbuild/checkout/xcb/xcb-util-image/image/xcb_image.c: In function 'xcb_image_create_native':
> /jhbuild/checkout/xcb/xcb-util-image/image/xcb_image.c:190:1: error: control reaches end of non-void function [-Wreturn-type]

Ping?

> Signed-off-by: Jon TURNEY <jon.turney-GrJqePx9RPPAJUdA+FbntA at public.gmane.org>
> ---
>  image/xcb_image.c |    2 ++
>  1 files changed, 2 insertions(+), 0 deletions(-)
> 
> diff --git a/image/xcb_image.c b/image/xcb_image.c
> index e426cbd..101aa4f 100644
> --- a/image/xcb_image.c
> +++ b/image/xcb_image.c
> @@ -187,6 +187,7 @@ xcb_image_create_native (xcb_connection_t *  c,
>        assert(0);
>    }
>    assert(0);
> +  return NULL;
>  }
>  
>  
> @@ -751,6 +752,7 @@ xcb_image_get_pixel (xcb_image_t *image,
>    default:
>        assert(0);
>    }
> +  return 0;
>  }
>  



More information about the Xcb mailing list