[Intel-gfx] [PATCH xf86-video-intel 14/21] sna/fb: Use memcpy() to avoid strict aliasing violations
Ville Syrjala
ville.syrjala at linux.intel.com
Thu Sep 19 16:31:06 UTC 2019
From: Ville Syrjälä <ville.syrjala at linux.intel.com>
Replace the cast+deref with memcpy() so that we don't upset
the compiler's strict aliasing rules.
Signed-off-by: Ville Syrjälä <ville.syrjala at linux.intel.com>
---
src/sna/fb/fbspan.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/src/sna/fb/fbspan.c b/src/sna/fb/fbspan.c
index 45cb7cc7bd6c..18136c200458 100644
--- a/src/sna/fb/fbspan.c
+++ b/src/sna/fb/fbspan.c
@@ -39,12 +39,13 @@ fbFillSpans(DrawablePtr drawable, GCPtr gc,
while (n--) {
BoxRec box;
- *(DDXPointPtr)&box = *pt++;
+ memcpy(&box, pt, sizeof(box));
box.x2 = box.x1 + *width++;
box.y2 = box.y1 + 1;
/* XXX fSorted */
fbDrawableRun(drawable, gc, &box, fbFillSpan, NULL);
+ pt++;
}
}
@@ -91,7 +92,8 @@ fbSetSpans(DrawablePtr drawable, GCPtr gc,
while (n--) {
BoxRec box;
- *(DDXPointPtr)&box = data.pt = *pt;
+ memcpy(&box, pt, sizeof(box));
+ data.pt = *pt;
box.x2 = box.x1 + *width;
box.y2 = box.y1 + 1;
--
2.21.0
More information about the Intel-gfx
mailing list