From a1e9b72102f21426b6c4e6b47ac1742eb79d904f Mon Sep 17 00:00:00 2001 From: Matt Turner Date: Thu, 26 May 2016 15:52:33 -0700 Subject: swrast: Avoid aliasing violation. Reviewed-by: Brian Paul Reviewed-by: Ian Romanick --- src/mesa/swrast/s_masking.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/mesa/swrast/s_masking.c b/src/mesa/swrast/s_masking.c index c95587b204c..c10bf1ac251 100644 --- a/src/mesa/swrast/s_masking.c +++ b/src/mesa/swrast/s_masking.c @@ -56,8 +56,8 @@ _swrast_mask_rgba_span(struct gl_context *ctx, struct gl_renderbuffer *rb, * Note that we're not using span->array->mask[] here. We could... */ if (span->array->ChanType == GL_UNSIGNED_BYTE) { - /* treat 4xGLubyte as 1xGLuint */ - const GLuint srcMask = *((GLuint *) ctx->Color.ColorMask[buf]); + GLuint srcMask; + memcpy(&srcMask, ctx->Color.ColorMask[buf], sizeof(srcMask)); const GLuint dstMask = ~srcMask; const GLuint *dst = (const GLuint *) rbPixels; GLuint *src = (GLuint *) span->array->rgba8; -- cgit v1.2.3