aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/ChangeLog5
-rw-r--r--src/xdisp.c6
2 files changed, 11 insertions, 0 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index fcaff20727..7cfb3aa61e 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,8 @@
+2011-11-11 Johan Bockgård <[email protected]>
+
+ * xdisp.c (fill_composite_glyph_string): Always set s->face, to
+ avoid a crash (bug#9496).
+
2012-01-09 Chong Yidong <[email protected]>
* xdisp.c (note_mouse_highlight): Fix use of uninitialized var.
diff --git a/src/xdisp.c b/src/xdisp.c
index c0c11bf02d..ca61947be8 100644
--- a/src/xdisp.c
+++ b/src/xdisp.c
@@ -19635,6 +19635,12 @@ fill_composite_glyph_string (s, base_face, overlaps)
}
s->cmp_to = i;
+ if (s->face == NULL)
+ {
+ s->face = base_face->ascii_face;
+ s->font = s->face->font;
+ }
+
/* All glyph strings for the same composition has the same width,
i.e. the width set for the first component of the composition. */
s->width = s->first_glyph->pixel_width;