This bug is marked fixed, but it has not been fixed. Jason marked it as fixed on 2008-05-08, with this note: I've marked this as fixed, since the bug reported will be fixed when font-backend is merged. I will not close it at this time though, as valid points about documentation were raised. Then, on 2008-06-12, I received a mail saying that it was closed. In any case, it is *not* fixed - I see the same thing in this recent build: GNU Emacs 23.0.60.1 (i386-mingw-nt5.1.2600) of 2008-08-01 on LENNART-69DE564 Windowing system distributor `Microsoft Corp.', version 5.1.2600 configured using `configure --with-gcc (3.4) --no-opt --cflags -Ic:/g/include -fno-crossjumping' There are two things that might be the problem: (1) `modify-frame-parameters' changes the `font' parameter behind your back from the value you provide `modify-frame-parameters': (modify-frame-parameters frame (list (cons 'font "-outline-Lucida Console-normal-normal-\ normal-mono-15-*-*-*-c-*-iso8859-1"))) The `font' frame parameter is then: "-outline-Lucida Console-normal-normal-normal-mono-15-\ *-*-*-c-*-fontset-auto8" IOW, iso8859-1 gets replaced by fontset-auto8. (2) `x-list-fonts' returns nil when passed such a font (i.e. with fontset-auto8). This breaks my code. Though the frame and the font appear normal, `x-list-fonts' does not recognize such a font. My code changes the font name to use a different size (e.g. changes 15 to 14), but it checks that `x-list-fonts' recognizes the font name before trying to use it. And `x-list-fonts' does not recognize the name (with "fontset-auto8") that `modify-frame-parameters' establishes behind the scene. The font that I provide to `modify-frame-parameters' is recognized by `x-list-fonts', and it has the same appearance, but it never appears as the frame parameter in this context because `modify-frame-parameters' substitutes a different name. Below is the pertinent part of the original bug report. The symptom is the same, but the font that `modify-frame-parameters' substitutes is slightly different. Back in April, it substituted: "-outline-lucida console-normal-roman-normal-mono-15-\ *-*-*-*-*-fontset-startup" Now it substitutes: "-outline-Lucida Console-normal-normal-normal-mono-15-\ *-*-*-c-*-fontset-auto8" Neither is recognized by `x-list-fonts'. --------8<---------2008-04-05 report ------------------- (frame-parameter nil 'font) -> "-*-Lucida Console-normal-r-*-*-14-*-96-96-c-*-iso8859-1" (modify-frame-parameters nil (list (cons 'font "-*-Lucida Console-normal-r-*-*-15-*-96-96-c-*-iso8859-1"))) (frame-parameter nil 'font) -> "-outline-lucida console-normal-roman-normal-mono-15-*-*-*-*-*-fontset-startup" What's that about? In Emacs 20, 21, and 22, the result is just the font I specified. I have code that zooms frames (font size). I change just the point size in the font spec, using `x-decompose-font-name' and `x-compose-font-name'. I check that the result is a legitimate font using `x-list-fonts'. If not, I increase or decrease the increment until I find the font that works with the closest size. [Yes, I know there are other ways to adjust font size, but I've found that this method is flexible for users and provides certain benefits.] My code no longer works without change, because after one call to `modify-frame-parameters' the font is no longer something recognized by `x-list-fonts'. I can comment out the part that iterates until it finds a size that works (recognized by `x-list-fonts'). That works, but I'm still curious about this. (Is there perhaps a bug in `x-list-fonts' or in `modify-frame-parameters'?)