[PATCH 4/5] winex11: Simplify X11DRV_XRandR_Init() error handling a bit.

Alexandre Julliard julliard at winehq.org
Wed Jul 11 10:00:07 CDT 2012


Henri Verbeet <hverbeet at codeweavers.com> writes:

> @@ -276,18 +274,15 @@ void X11DRV_XRandR_Init(void)
>  
>      /* see if Xrandr is available */
>      wine_tsx11_lock();
> -    ok = pXRRQueryExtension(gdi_display, &xrandr_event, &xrandr_error);
> -    if (ok)
> -    {
> -        X11DRV_expect_error(gdi_display, XRandRErrorHandler, NULL);
> -        ok = pXRRQueryVersion(gdi_display, &xrandr_major, &xrandr_minor);
> -        if (X11DRV_check_error()) ok = FALSE;
> -    }
> -    if (ok)
> -    {
> -        TRACE("Found XRandR - major: %d, minor: %d\n", xrandr_major, xrandr_minor);
> -        xrandr_init_modes();
> -    }
> +    if (!pXRRQueryExtension( gdi_display, &xrandr_event, &xrandr_error )) goto done;
> +    X11DRV_expect_error( gdi_display, XRandRErrorHandler, NULL );
> +    if (!pXRRQueryVersion( gdi_display, &xrandr_major, &xrandr_minor )) goto done;
> +    if (X11DRV_check_error()) goto done;

You have to call X11DRV_check_error after X11DRV_expect_error in all cases.

-- 
Alexandre Julliard
julliard at winehq.org



More information about the wine-devel mailing list