(xftfont_open): Make sure that Xrender extension is added

before Xft one (Bug#1696).
This commit is contained in:
YAMAMOTO Mitsuharu 2009-05-11 09:30:34 +00:00
parent 47a6002f34
commit 9cb363dbda
2 changed files with 13 additions and 0 deletions

View file

@ -3,6 +3,9 @@
* gtkutil.c (xg_frame_set_char_size): Set frame pixel width/height to
what we expect to get in the next ConfigureNotify event.
* xftfont.c (xftfont_open): Make sure that Xrender extension is added
before Xft one (Bug#1696).
2009-05-07 David Reitter <david.reitter@gmail.com>
* nsfns.m (Fx_display_planes): Compute bitplanes using

View file

@ -274,6 +274,16 @@ xftfont_open (f, entity, pixel_size)
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);