translate-default-and-nil-font
authorcsr21 <csr21@cantab.net>
Mon, 20 Apr 2009 17:08:27 +0000 (18:08 +0100)
committercsr21 <csr21@cantab.net>
Mon, 20 Apr 2009 17:08:27 +0000 (18:08 +0100)
commit891e74be093772a5fe29d5f1969939d12dbaa454
tree99442c5891f2b68b83c55980cead465dc053f418
parentc0215a4b37127dca27119d806f590523280c909d
translate-default-and-nil-font

As noted on portable-clx some 2 years ago, using the default gcontext
causes CLX to hang waiting for input that will never come.  The change that
caused this dates from February 2003, when the default translate function
was made to query the incoming font for its min- and max-char; the default
font for a GC only has a weird implicit as-yet-unopened font, and so the
query will turn into a server roundtrip, which won't happen properly within
a with-buffer-flush-inhibited.

Do two things: make the default translate function robust to NIL as a font
name (which the documentation explicitly says is legal) and don't create
the proxy font object within the draw-glyphs family, passing NIL instead.
text.lisp