diff --git a/.pick_status.json b/.pick_status.json index c0eaca59bf3..42910255ceb 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -1264,7 +1264,7 @@ "description": "zink: Always fill external_only in zink_query_dmabuf_modifiers", "nominated": true, "nomination_type": 0, - "resolution": 0, + "resolution": 1, "main_sha": null, "because_sha": null, "notes": null diff --git a/src/gallium/drivers/zink/zink_screen.c b/src/gallium/drivers/zink/zink_screen.c index bfb4fe59d74..cccc901df8f 100644 --- a/src/gallium/drivers/zink/zink_screen.c +++ b/src/gallium/drivers/zink/zink_screen.c @@ -2455,8 +2455,12 @@ zink_query_dmabuf_modifiers(struct pipe_screen *pscreen, enum pipe_format format { struct zink_screen *screen = zink_screen(pscreen); *count = screen->modifier_props[format].drmFormatModifierCount; - for (int i = 0; i < MIN2(max, *count); i++) + for (int i = 0; i < MIN2(max, *count); i++) { + if (external_only) + external_only[i] = 0; + modifiers[i] = screen->modifier_props[format].pDrmFormatModifierProperties[i].drmFormatModifier; + } } static bool