From 194bf0a2e01769f4b29df06febf27ce340c1cd68 Mon Sep 17 00:00:00 2001 From: Michal Srb Date: Thu, 15 Mar 2018 17:27:57 +0100 Subject: [PATCH] st/dri: don't set queryDmaBufFormats/queryDmaBufModifiers if the driver does not implement it This is equivalent to commit a65db0ad1c3, but for dri_kms_init_screen. Without this gbm_dri_is_format_supported always returns false. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=104926 Fixes: e14fe41e0bf ("st/dri: implement createImageFromRenderbuffer(2)") Reviewed-by: Emil Velikov Reviewed-by: Adam Jackson Tested-by: Adam Williamson --- src/gallium/state_trackers/dri/dri2.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/gallium/state_trackers/dri/dri2.c b/src/gallium/state_trackers/dri/dri2.c index c8a484e3926..2411a369c5d 100644 --- a/src/gallium/state_trackers/dri/dri2.c +++ b/src/gallium/state_trackers/dri/dri2.c @@ -2219,8 +2219,10 @@ dri_kms_init_screen(__DRIscreen * sPriv) dri2ImageExtension.createImageFromFds = dri2_from_fds; dri2ImageExtension.createImageFromDmaBufs = dri2_from_dma_bufs; dri2ImageExtension.createImageFromDmaBufs2 = dri2_from_dma_bufs2; - dri2ImageExtension.queryDmaBufFormats = dri2_query_dma_buf_formats; - dri2ImageExtension.queryDmaBufModifiers = dri2_query_dma_buf_modifiers; + if (pscreen->query_dmabuf_modifiers) { + dri2ImageExtension.queryDmaBufFormats = dri2_query_dma_buf_formats; + dri2ImageExtension.queryDmaBufModifiers = dri2_query_dma_buf_modifiers; + } } sPriv->extensions = dri_screen_extensions;