diff options
| author | Kenichi Handa | 1997-03-18 23:31:34 +0000 |
|---|---|---|
| committer | Kenichi Handa | 1997-03-18 23:31:34 +0000 |
| commit | cd49fad3f12beb3844dac4c75d4ce0a1fda76abd (patch) | |
| tree | c9f8a4347e1f7c820b6e992b79fd9c63b65b0ee5 /src | |
| parent | a8283a4a985441890328e69970e55779583ed8ac (diff) | |
| download | emacs-cd49fad3f12beb3844dac4c75d4ce0a1fda76abd.tar.gz emacs-cd49fad3f12beb3844dac4c75d4ce0a1fda76abd.zip | |
(GLYPH_FOLLOW_ALIASES): Assure that the resulting G
contains valid character code.
Diffstat (limited to 'src')
| -rw-r--r-- | src/disptab.h | 12 |
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. */ |