Mercurial > emacs
changeset 103199:3b14cedd241f
(xftfont_open): Make sure that Xrender extension is added
before Xft one (Bug#1696).
author | YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> |
---|---|
date | Mon, 11 May 2009 09:29:49 +0000 |
parents | f63bce93c7a1 |
children | 1bf70050c13e |
files | src/xftfont.c |
diffstat | 1 files changed, 10 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/src/xftfont.c Mon May 11 06:42:45 2009 +0000 +++ b/src/xftfont.c Mon May 11 09:29:49 2009 +0000 @@ -274,6 +274,16 @@ BLOCK_INPUT; + /* Make sure that the Xrender extension is added before the Xft one. + Otherwise, the close-display hook set by Xft is called after the + one for Xrender, and the former tries to re-add the latter. This + results in inconsistency of internal states and leads to X + protocol error when one reconnects to the same X server. + (Bug#1696) */ + { + int event_base, error_base; + XRenderQueryExtension (display, &event_base, &error_base); + } match = XftFontMatch (display, FRAME_X_SCREEN_NUMBER (f), pat, &result); FcPatternDestroy (pat); xftfont = XftFontOpenPattern (display, match);