There is a small error in font.el of the Xft branch leading to a
malfunctioning font-default-font-for-device.
Have a look at
http://cvs.xemacs.org/viewcvs.cgi/XEmacs/xemacs/lisp/font.el.diff?r1=1.16...
Obviously the else path has not been removed when the if statement for
font-running-xemacs was removed.
The "patch" below removes the remains.
Stephen: The patch from Daniel Pittman
http://list-archive.xemacs.org/xemacs-patches/200507/msg00058.html
gives a nice speed gain. He hasn't merged the patch himself yet. Would
you like to do that, while you're at the code? :)
Thanks for your work!
--- lisp/font.el 2005-09-07 13:41:16.000000000 +0200
+++ lisp/font.el 2005-09-07 13:41:19.000000000 +0200
@@ -637,11 +637,7 @@
(or device (setq device (selected-device)))
(font-truename
(make-font-specifier
- (face-font-name 'default device)))
- (let ((font (cdr-safe (assq 'font (frame-parameters device)))))
- (if (and (fboundp 'fontsetp) (fontsetp font))
- (aref (get-font-info (aref (cdr (get-fontset-info font)) 0)) 2)
- font)))
+ (face-font-name 'default device))))
;;;###autoload
(defun font-default-object-for-device (&optional device)