[Mesa-dev] [PATCH] glx/glvnd: Fix GLXdispatchIndex sorting
Eric Engestrom
eric.engestrom at imgtec.com
Tue Feb 14 17:26:08 UTC 2017
On Monday, 2017-02-06 14:09:11 +0100, Hans de Goede wrote:
> Commit 8bca8d89ef3b ("glx/glvnd: Fix dispatch function names and indices")
> fixed the sorting of the array initializers in g_glxglvnddispatchfuncs.c
> because FindGLXFunction's binary search needs these to be sorted
> alphabetically.
>
> That commit also mostly fixed the sorting of the DI_foo defines in
> g_glxglvnddispatchindices.h, which is what actually matters as the
> arrays are initialized using "[DI_foo] = glXfoo," but a small error
> crept in which at least causes glXGetVisualFromFBConfigSGIX to not
> resolve, breaking games such as "The Binding of Isaac: Rebirth" and
> "Crypt of the NecroDancer" from Steam not working and possible causes
> other problems too.
>
> This commit fixes the last of the sorting errors, fixing these mentioned
> games not working.
>
> Fixes: 8bca8d89ef3b ("glx/glvnd: Fix dispatch function names and indices")
> Cc: "13.0" <mesa-stable at lists.freedesktop.org>
> Cc: "17.0" <mesa-stable at lists.freedesktop.org>
> Cc: Adam Jackson <ajax at redhat.com>
> Signed-off-by: Hans de Goede <hdegoede at redhat.com>
Reviewed-by: Eric Engestrom <eric.engestrom at imgtec.com>
> ---
> src/glx/g_glxglvnddispatchindices.h | 8 ++++----
> 1 file changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/src/glx/g_glxglvnddispatchindices.h b/src/glx/g_glxglvnddispatchindices.h
> index 0891654..05a2c8c 100644
> --- a/src/glx/g_glxglvnddispatchindices.h
> +++ b/src/glx/g_glxglvnddispatchindices.h
> @@ -46,14 +46,14 @@ typedef enum __GLXdispatchIndex {
> DI_GetMscRateOML,
> // GetProcAddress implemented by libglvnd
> // GetProcAddressARB implemented by libglvnd
> + DI_GetScreenDriver,
> // GetSelectedEvent implemented by libglvnd
> DI_GetSelectedEventSGIX,
> + DI_GetSwapIntervalMESA,
> + DI_GetSyncValuesOML,
> DI_GetVideoSyncSGI,
> // GetVisualFromFBConfig implemented by libglvnd
> DI_GetVisualFromFBConfigSGIX,
> - DI_GetScreenDriver,
> - DI_GetSwapIntervalMESA,
> - DI_GetSyncValuesOML,
> // ImportContextEXT implemented by libglvnd
> // IsDirect implemented by libglvnd
> DI_JoinSwapGroupSGIX,
> @@ -81,9 +81,9 @@ typedef enum __GLXdispatchIndex {
> DI_SwapIntervalMESA,
> DI_SwapIntervalSGI,
> // UseXFont implemented by libglvnd
> - // WaitGL implemented by libglvnd
> DI_WaitForMscOML,
> DI_WaitForSbcOML,
> + // WaitGL implemented by libglvnd
> DI_WaitVideoSyncSGI,
> // WaitX implemented by libglvnd
> DI_LAST_INDEX
> --
> 2.9.3
>
More information about the mesa-dev
mailing list