zink: do not expose quad support when no geometry shader

The emulation of quads implemented in Zink utilizes geometry shaders,
but currently the enablement of it is only guarded by the support of
triangle strips.

Add geometry shaders to the condition to enable it either too.

Signed-off-by: Icenowy Zheng <uwu@icenowy.me>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30608>
This commit is contained in:
Icenowy Zheng
2024-08-12 11:20:27 +08:00
committed by Marge Bot
parent e5291e1a22
commit 4e777bb19b
+1 -1
View File
@@ -570,7 +570,7 @@ zink_get_param(struct pipe_screen *pscreen, enum pipe_cap param)
}
case PIPE_CAP_SUPPORTED_PRIM_MODES: {
uint32_t modes = BITFIELD_MASK(MESA_PRIM_COUNT);
if (!screen->have_triangle_fans)
if (!screen->have_triangle_fans || !screen->info.feats.features.geometryShader)
modes &= ~BITFIELD_BIT(MESA_PRIM_QUADS);
modes &= ~BITFIELD_BIT(MESA_PRIM_QUAD_STRIP);
modes &= ~BITFIELD_BIT(MESA_PRIM_POLYGON);