aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/xdisp.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/src/xdisp.c b/src/xdisp.c
index ffe1e9ede2e..a0ac755ffa6 100644
--- a/src/xdisp.c
+++ b/src/xdisp.c
@@ -5674,6 +5674,7 @@ get_next_display_element (it)
5674 if (success_p && it->dpvec == NULL) 5674 if (success_p && it->dpvec == NULL)
5675 { 5675 {
5676 Lisp_Object dv; 5676 Lisp_Object dv;
5677 struct charset *unibyte = CHARSET_FROM_ID (charset_unibyte);
5677 5678
5678 if (it->dp 5679 if (it->dp
5679 && (dv = DISP_CHAR_VECTOR (it->dp, it->c), 5680 && (dv = DISP_CHAR_VECTOR (it->dp, it->c),
@@ -5728,7 +5729,7 @@ get_next_display_element (it)
5728 || it->c == 0xAD /* SOFT HYPHEN */))) 5729 || it->c == 0xAD /* SOFT HYPHEN */)))
5729 : (it->c >= 127 5730 : (it->c >= 127
5730 && (! unibyte_display_via_language_environment 5731 && (! unibyte_display_via_language_environment
5731 || (UNIBYTE_CHAR_HAS_MULTIBYTE_P (it->c))))))) 5732 || (DECODE_CHAR (unibyte, it->c) <= 0xA0))))))
5732 { 5733 {
5733 /* IT->c is a control character which must be displayed 5734 /* IT->c is a control character which must be displayed
5734 either as '\003' or as `^C' where the '\\' and '^' 5735 either as '\003' or as `^C' where the '\\' and '^'
@@ -21094,9 +21095,12 @@ x_produce_glyphs (it)
21094 { 21095 {
21095 if (SINGLE_BYTE_CHAR_P (it->c) 21096 if (SINGLE_BYTE_CHAR_P (it->c)
21096 && unibyte_display_via_language_environment) 21097 && unibyte_display_via_language_environment)
21097 it->char_to_display = unibyte_char_to_multibyte (it->c);
21098 if (! SINGLE_BYTE_CHAR_P (it->char_to_display))
21099 { 21098 {
21099 struct charset *unibyte = CHARSET_FROM_ID (charset_unibyte);
21100
21101 /* get_next_display_element assures that this decoding
21102 never fails. */
21103 it->char_to_display = DECODE_CHAR (unibyte, it->c);
21100 it->multibyte_p = 1; 21104 it->multibyte_p = 1;
21101 it->face_id = FACE_FOR_CHAR (it->f, face, it->char_to_display, 21105 it->face_id = FACE_FOR_CHAR (it->f, face, it->char_to_display,
21102 -1, Qnil); 21106 -1, Qnil);