aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKenichi Handa1997-03-18 23:31:34 +0000
committerKenichi Handa1997-03-18 23:31:34 +0000
commitcd49fad3f12beb3844dac4c75d4ce0a1fda76abd (patch)
treec9f8a4347e1f7c820b6e992b79fd9c63b65b0ee5
parenta8283a4a985441890328e69970e55779583ed8ac (diff)
downloademacs-cd49fad3f12beb3844dac4c75d4ce0a1fda76abd.tar.gz
emacs-cd49fad3f12beb3844dac4c75d4ce0a1fda76abd.zip
(GLYPH_FOLLOW_ALIASES): Assure that the resulting G
contains valid character code.
-rw-r--r--src/disptab.h12
1 files changed, 8 insertions, 4 deletions
diff --git a/src/disptab.h b/src/disptab.h
index 6ee008453df..6b2f5f05d51 100644
--- a/src/disptab.h
+++ b/src/disptab.h
@@ -77,10 +77,14 @@ extern Lisp_Object Vglyph_table;
77 77
78/* Follow all aliases for G in the glyph table given by (BASE, 78/* Follow all aliases for G in the glyph table given by (BASE,
79 LENGTH), and set G to the final glyph. */ 79 LENGTH), and set G to the final glyph. */
80#define GLYPH_FOLLOW_ALIASES(base, length, g) \ 80#define GLYPH_FOLLOW_ALIASES(base, length, g) \
81 while (GLYPH_ALIAS_P ((base), (length), (g))) \ 81 do { \
82 (g) = GLYPH_ALIAS ((base), (g)); 82 while (GLYPH_ALIAS_P ((base), (length), (g))) \
83 83 (g) = GLYPH_ALIAS ((base), (g)); \
84 if (!GLYPH_CHAR_VALID_P (FAST_GLYPH_CHAR (g))) \
85 g = FAST_MAKE_GLYPH (' ', FAST_GLYPH_FACE (g)); \
86 } while (0)
87
84/* Assuming that GLYPH_SIMPLE_P (BASE, LEN, G) is 0, 88/* Assuming that GLYPH_SIMPLE_P (BASE, LEN, G) is 0,
85 return the length and the address of the character-sequence 89 return the length and the address of the character-sequence
86 used for outputting GLYPH G. */ 90 used for outputting GLYPH G. */