diff options
author | Erik Faye-Lund <[email protected]> | 2019-11-28 18:41:30 +0100 |
---|---|---|
committer | Erik Faye-Lund <[email protected]> | 2019-11-29 08:58:05 +0100 |
commit | 655b9aa711d78c685866b7956d0de7b2d0db52a2 (patch) | |
tree | ae40a3d47563311b3ef5738a1444965da80423fe /src | |
parent | 927363e0b9d267cf11d601fa65a90677cdfa7737 (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 <[email protected]>
Reviewed-by: Dave Airlie <[email protected]>
Diffstat (limited to 'src')
-rw-r--r-- | src/gallium/drivers/zink/zink_screen.c | 2 |
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)) { |