From: Matt Turner Date: Thu, 28 Jul 2016 19:44:41 +0000 (-0700) Subject: i915: Avoid aliasing violation. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=12a14052e81d5384d1e040305b388db375e21490;p=mesa.git i915: Avoid aliasing violation. Reviewed-by: Iago Toral Quiroga --- diff --git a/src/mesa/drivers/dri/i915/intel_clear.c b/src/mesa/drivers/dri/i915/intel_clear.c index 8cf7c142f31..4306826b876 100644 --- a/src/mesa/drivers/dri/i915/intel_clear.c +++ b/src/mesa/drivers/dri/i915/intel_clear.c @@ -81,7 +81,7 @@ static void intelClear(struct gl_context *ctx, GLbitfield mask) { struct intel_context *intel = intel_context(ctx); - const GLuint colorMask = *((GLuint *) & ctx->Color.ColorMask[0]); + GLuint colorMask; GLbitfield tri_mask = 0; GLbitfield blit_mask = 0; GLbitfield swrast_mask = 0; @@ -89,6 +89,8 @@ intelClear(struct gl_context *ctx, GLbitfield mask) struct intel_renderbuffer *irb; int i; + memcpy(&colorMask, &ctx->Color.ColorMask[0], sizeof(colorMask)); + if (mask & (BUFFER_BIT_FRONT_LEFT | BUFFER_BIT_FRONT_RIGHT)) { intel->front_buffer_dirty = true; }