[Mesa-dev] [PATCH] i965: Fix context initialization after 2f896627175384fd5

Eric Anholt eric at anholt.net
Mon Nov 4 15:50:58 PST 2013


You can't return stack-initialized values and expect anything good to
happen.
---
 src/mesa/drivers/dri/i965/brw_context.c | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/src/mesa/drivers/dri/i965/brw_context.c b/src/mesa/drivers/dri/i965/brw_context.c
index 13569ad..95b602f 100644
--- a/src/mesa/drivers/dri/i965/brw_context.c
+++ b/src/mesa/drivers/dri/i965/brw_context.c
@@ -275,12 +275,15 @@ brw_init_driver_functions(struct brw_context *brw,
 static const int*
 brw_supported_msaa_modes(const struct brw_context *brw)
 {
+   static const int gen7_samples[] = {8, 4, 0};
+   static const int gen6_samples[] = {4, 0};
+   static const int gen4_samples[] = {0};
    if (brw->gen >= 7) {
-      return (int[]){8, 4, 0};
+      return gen7_samples;
    } else if (brw->gen == 6) {
-      return (int[]){4, 0};
+      return gen6_samples;
    } else {
-      return (int[]){0};
+      return gen4_samples;
    }
 }
 
-- 
1.8.4.rc3



More information about the mesa-dev mailing list