|
From: | Shankar Unni |
Subject: | Emacs-21.0.104 - invalid default font value on W32 |
Date: | Fri, 20 Jul 2001 16:54:36 -0700 |
Don't know if this has already been reported or not.
(OK, OK, I'm one of those guys who went googling for the source..)
On W32, Emacs-21.0.104 built non-cygwin (configure --no-cygwin --with-gcc, using gcc 2.95.3): When starting with "emacs -q" (no site-lisp anywhere), even before it pops up the first frame, it gives the error
No fonts match `-*-Courier New-normal-r-*-*-17-102-120-120--c-*-iso8859-1'
and croaks. (Notice the "--c-" in the middle - that should be "-c-").
I'm sorry to say that after a couple of hours of debugging, I'm stumped. It's definitely coming from a block of code in lisp/term/w32-win.el, at around line 1238, but there seem to be absolutely no font patterns of this bogus form (something--c-something) anywhere in the lisp or C source:
(if (fboundp 'new-fontset)
(progn
;; Create the standard fontset.
;; [ STUFF ELIDED ]
(let ((font (or (cdr (assq 'font initial-frame-alist))
(cdr (assq 'font default-frame-alist))
(x-get-resource "font" "Font")))
xlfd-fields resolved-name)
(if (and font
(not (query-fontset font))
====>>> (setq resolved-name (x-resolve-font-name font))
(setq xlfd-fields (x-decompose-font-name font)))
;; [ MORE STUFF ELIDED ]
The "font" string passed in to x-resolve-font-name at that point is this bogus string. But I'm hanged if I can figure out where it got that value from. It's rather hard to debug lisp at that point, since the first frame hasn't even come up yet.
I managed to work around this by setting the Font in the registry. I had to do some handy hackery in the C source to even get the stack trace:
Signaling:
signal(error ("No fonts match `-*-Courier New-normal-r-*-*-17-102-120-120--c-*
-iso8859-1'"))
error("No fonts match `%s'" "-*-Courier New-normal-r-*-*-17-102-120-120--c-*-i
so8859-1")
x-resolve-font-name("-*-Courier New-normal-r-*-*-17-102-120-120--c-*-iso8859-1
")
byte-code("??!?úZ ?\"?¿? ?¿? ??A?ª ?
??#?¿+???\"?&??'?&?ú¼ ??&!?'??'???ñ| ??'???ú?ñ ???'BB?'? ?'\"???'???ú?? ?
???'??AB
B???'???ú¼ ????'??AB
B?*??(??ß\"???)?ú? ???)\"?ú? ?
B?*??º" [w32-standard-fontset-spec initial-frame-alist default-frame-alist resol
ved-name xlfd-fields font fboundp new-fontset create-fontset-from-fontset-spec t
create-fontset-from-x-resource x-get-resource "font" "Font" nil query-fontset x
-resolve-font-name x-decompose-font-name "fontset" x-complement-fontset-spec cre
ate-fontset-from-ascii-font "startup" "geometry" "Geometry" x-parse-geometry top
left (user-position . t) (user-size . t) append height width "reverseVideo" "Re
verseVideo" string-match "^\\(true\\|yes\\|on\\)$" (reverse . t) xlfd-regexp-reg
istry-subnum res-geometry parsed case-fold-search rv] 6)
load("term/w32-win" nil t)
byte-code(?ú? ?ñ? ?
!?Q??#?¿??º" [window-system noninteractive term-file-prefix load symbol-name "-w
in" nil t] 4)
command-line()
normal-top-level()
--
Shankar Unni IntruVert Networks, Inc.
shankar@intruvert.com (408) 434-8311
[Prev in Thread] | Current Thread | [Next in Thread] |