Mesa (master): i965: Check if the modifier is supported in select_best_modifier
Jason Ekstrand
jekstrand at kemper.freedesktop.org
Mon Jul 17 20:49:36 UTC 2017
Module: Mesa
Branch: master
Commit: 7947d05f840cfbb9b162a279d6eccc9416217e68
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=7947d05f840cfbb9b162a279d6eccc9416217e68
Author: Jason Ekstrand <jason.ekstrand at intel.com>
Date: Sun Jul 16 16:54:44 2017 -0700
i965: Check if the modifier is supported in select_best_modifier
Otherwise, if a client gave us a list of modifiers that contained a
modifier we understand but which is not supported on the hardware, we
might return that one and then fail to create the image.
Reviewed-by: Daniel Stone <daniels at collabora.com>
---
src/mesa/drivers/dri/i965/intel_screen.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/src/mesa/drivers/dri/i965/intel_screen.c b/src/mesa/drivers/dri/i965/intel_screen.c
index 0c1a88d36f..7ccc1d34f0 100644
--- a/src/mesa/drivers/dri/i965/intel_screen.c
+++ b/src/mesa/drivers/dri/i965/intel_screen.c
@@ -586,6 +586,9 @@ select_best_modifier(struct gen_device_info *devinfo,
enum modifier_priority prio = MODIFIER_PRIORITY_INVALID;
for (int i = 0; i < count; i++) {
+ if (!modifier_is_supported(devinfo, modifiers[i]))
+ continue;
+
switch (modifiers[i]) {
case I915_FORMAT_MOD_Y_TILED:
prio = MAX2(prio, MODIFIER_PRIORITY_Y);
More information about the mesa-commit
mailing list