summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorErik Faye-Lund <erik.faye-lund@collabora.com>2019-11-28 18:41:30 +0100
committerErik Faye-Lund <erik.faye-lund@collabora.com>2019-11-29 08:58:05 +0100
commit655b9aa711d78c685866b7956d0de7b2d0db52a2 (patch)
treeae40a3d47563311b3ef5738a1444965da80423fe
parent927363e0b9d267cf11d601fa65a90677cdfa7737 (diff)
zink: reject invalid sample-counts
Vulkan only allows power-of-two sample counts. We already kinda checked for this, but forgot to validate the result in the end. Let's check the result and error properly. Signed-off-by: Erik Faye-Lund <erik.faye-lund@collabora.com> Reviewed-by: Dave Airlie <airlied@redhat.com>
-rw-r--r--src/gallium/drivers/zink/zink_screen.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/gallium/drivers/zink/zink_screen.c b/src/gallium/drivers/zink/zink_screen.c
index cff37b9b37b..fa92424a6a6 100644
--- a/src/gallium/drivers/zink/zink_screen.c
+++ b/src/gallium/drivers/zink/zink_screen.c
@@ -490,6 +490,8 @@ zink_is_format_supported(struct pipe_screen *pscreen,
if (sample_count >= 1) {
VkSampleCountFlagBits sample_mask = vk_sample_count_flags(sample_count);
+ if (!sample_mask)
+ return false;
const struct util_format_description *desc = util_format_description(format);
if (util_format_is_depth_or_stencil(format)) {
if (util_format_has_depth(desc)) {