Mercurial > emacs
diff src/dispextern.h @ 47101:8deb7414f946
(PRODUCE_GLYPHS): Set inhibit_free_realized_faces
when iterator is adding glyphs to a glyph matrix.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Thu, 29 Aug 2002 14:41:28 +0000 |
parents | 8cdf38364f8d |
children | 01a54ba31599 |
line wrap: on
line diff
--- a/src/dispextern.h Thu Aug 29 14:41:09 2002 +0000 +++ b/src/dispextern.h Thu Aug 29 14:41:28 2002 +0000 @@ -1852,10 +1852,16 @@ /* Call produce_glyphs or produce_glyphs_hook, if set. Shortcut to avoid the function call overhead. */ -#define PRODUCE_GLYPHS(IT) \ - (rif \ - ? rif->produce_glyphs ((IT)) \ - : produce_glyphs ((IT))) +#define PRODUCE_GLYPHS(IT) \ + do { \ + extern int inhibit_free_realized_faces; \ + if (rif != NULL) \ + rif->produce_glyphs ((IT)); \ + else \ + produce_glyphs ((IT)); \ + if ((IT)->glyph_row != NULL) \ + inhibit_free_realized_faces = 1; \ + } while (0) /* Bit-flags indicating what operation move_it_to should perform. */