[PATCH xserver] glx: Fix computation of GLX_X_RENDERABLE fbconfig attribute

Adam Jackson ajax at nwnk.net
Fri Sep 2 18:09:22 UTC 2016


On Wed, 2016-03-30 at 14:04 -0400, Adam Jackson wrote:
> From the GLX spec:
> 
>     "GLX_X_RENDERABLE is a boolean indicating whether X can be used to
>     render into a drawable created with the GLXFBConfig. This attribute
>     is True if the GLXFBConfig supports GLX windows and/or pixmaps."
> 
> Every backend was setting this to true unconditionally, and then the
> core ignored that value and sent true unconditionally on its own. This
> is broken for ARB_fbconfig_float and EXT_fbconfig_packed_float, which
> only apply to pbuffers, which are not renderable from non-GLX APIs.
> 
> Instead compute GLX_X_RENDERABLE from the supported drawable types. The
> dri backends were getting _that_ wrong too, so fix that as well.
> 
> This is not a functional change, as there are no mesa drivers that claim
> to support __DRI_ATTRIB_{UNSIGNED_,}FLOAT_BIT yet.
> 
> Signed-off-by: Adam Jackson <ajax at redhat.com>
> ---
>  glx/glxcmds.c                  |  5 +++-
>  glx/glxdri2.c                  |  6 ++--
>  glx/glxdricommon.c             | 62 +++++++++++++++---------------------------
>  glx/glxdricommon.h             |  3 +-
>  glx/glxdriswrast.c             |  6 ++--
>  glx/glxscreens.h               |  1 -
>  hw/xquartz/GL/glcontextmodes.c |  1 -
>  hw/xquartz/GL/visualConfigs.c  |  1 -
>  hw/xwin/glx/indirect.c         |  2 --
>  9 files changed, 31 insertions(+), 56 deletions(-)

Any takers?

- ajax


More information about the xorg-devel mailing list