From 2394c7c1ccca619fa53be9586252eca8e2806114 Mon Sep 17 00:00:00 2001 From: Joseph Crowell Date: Wed, 4 Feb 2026 13:11:11 +1000 Subject: [PATCH] dri3: update version check to include 1.1 check Signed-off-by: Joseph Crowell --- dri3/dri3_request.c | 24 ++++++++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) diff --git a/dri3/dri3_request.c b/dri3/dri3_request.c index 46f058bba5..8b08078814 100644 --- a/dri3/dri3_request.c +++ b/dri3/dri3_request.c @@ -48,6 +48,18 @@ dri3_screen_can_one_point_four(ScreenPtr screen) dri3->info->import_syncobj; } +static Bool +dri3_screen_can_one_point_one(ScreenPtr screen) +{ + dri3_screen_priv_ptr dri3 = dri3_screen_priv(screen); + + if (dri3 && dri3->info && dri3->info->version >= 1 && + dri3->info->fd_from_pixmap) + return TRUE; + + return FALSE; +} + static Bool dri3_screen_can_one_point_two(ScreenPtr screen) { @@ -75,10 +87,14 @@ proc_dri3_query_version(ClientPtr client) }; DIX_FOR_EACH_SCREEN({ - if (!dri3_screen_can_one_point_two(walkScreen)) { + if (!dri3_screen_can_one_point_one(walkScreen)) { reply.minorVersion = 0; break; } + if (!dri3_screen_can_one_point_two(walkScreen)) { + reply.minorVersion = 1; + break; + } if (!dri3_screen_can_one_point_four(walkScreen)) { reply.minorVersion = 2; break; @@ -86,10 +102,14 @@ proc_dri3_query_version(ClientPtr client) }); DIX_FOR_EACH_GPU_SCREEN({ - if (!dri3_screen_can_one_point_two(walkScreen)) { + if (!dri3_screen_can_one_point_one(walkScreen)) { reply.minorVersion = 0; break; } + if (!dri3_screen_can_one_point_two(walkScreen)) { + reply.minorVersion = 1; + break; + } if (!dri3_screen_can_one_point_four(walkScreen)) { reply.minorVersion = 2; break;