diff options
-rw-r--r-- | src/sna/sna_glyphs.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/sna/sna_glyphs.c b/src/sna/sna_glyphs.c index 6ee40336..ebc061b5 100644 --- a/src/sna/sna_glyphs.c +++ b/src/sna/sna_glyphs.c @@ -85,8 +85,11 @@ #define NO_ATLAS ((PicturePtr)-1) #define GLYPH_TOLERANCE 3 -#define glyph_valid(g) *((uint32_t *)&(g)->info.width) -#define glyph_copy_size(r, g) *(uint32_t *)&(r)->width = *(uint32_t *)&g->info.width +#define glyph_valid(g) ((g)->info.width || (g)->info.height) +#define glyph_copy_size(r, g) do { \ + (r)->width = (g)->info.width; \ + (r)->height = (g)->info.height; \ +} while (0) #if HAS_PIXMAN_GLYPHS static pixman_glyph_cache_t *__global_glyph_cache; |