diff options
author | nicm <nicm> | 2020-06-05 09:35:41 +0000 |
---|---|---|
committer | nicm <nicm> | 2020-06-05 09:35:41 +0000 |
commit | 03b2998abe7712324a1a2ca254167dcc1ce28e4d (patch) | |
tree | 08fb47f36a04faa769a1b0638b05cfa9e519045b | |
parent | c908d2039f97a593fb25da22843c70517495da9b (diff) | |
download | rtmux-03b2998abe7712324a1a2ca254167dcc1ce28e4d.tar.gz rtmux-03b2998abe7712324a1a2ca254167dcc1ce28e4d.tar.bz2 rtmux-03b2998abe7712324a1a2ca254167dcc1ce28e4d.zip |
Do not take the address of a potentially unaligned member.
-rw-r--r-- | grid.c | 5 |
1 files changed, 4 insertions, 1 deletions
@@ -114,6 +114,7 @@ grid_extended_cell(struct grid_line *gl, struct grid_cell_entry *gce, { struct grid_extd_entry *gee; int flags = (gc->flags & ~GRID_FLAG_CLEARED); + utf8_char uc; if (~gce->flags & GRID_FLAG_EXTENDED) grid_get_extended_cell(gl, gce, flags); @@ -121,8 +122,10 @@ grid_extended_cell(struct grid_line *gl, struct grid_cell_entry *gce, fatalx("offset too big"); gl->flags |= GRID_LINE_EXTENDED; + utf8_from_data(&gc->data, &uc); + gee = &gl->extddata[gce->offset]; - utf8_from_data(&gc->data, &gee->data); + gee->data = uc; gee->attr = gc->attr; gee->flags = flags; gee->fg = gc->fg; |