Bug 478370 - xemacs complains about missing charsets
Summary: xemacs complains about missing charsets
Alias: None
Product: Fedora
Classification: Fedora
Component: xemacs
Version: 11
Hardware: All
OS: Linux
Target Milestone: ---
Assignee: Jerry James
QA Contact: Fedora Extras Quality Assurance
Depends On:
TreeView+ depends on / blocked
Reported: 2008-12-29 02:15 UTC by Carl Brune
Modified: 2009-09-04 04:07 UTC (History)
6 users (show)

Fixed In Version: 21.5.29-2.fc11
Doc Type: Bug Fix
Doc Text:
Clone Of:
Last Closed: 2009-09-04 04:07:15 UTC

Attachments (Terms of Use)
LISP backtrace (559 bytes, application/octet-stream)
2009-03-08 17:01 UTC, Horst H. von Brand
no flags Details
Binary backtrace (4.80 KB, application/octet-stream)
2009-03-08 17:20 UTC, Horst H. von Brand
no flags Details

Description Carl Brune 2008-12-29 02:15:05 UTC
Description of problem:

When I start xemacs from the command line, it complains "Warning: Missing charsets in String to FontSet conversion" to standard error.

Version-Release number of selected component (if applicable):

$ yum list installed | grep xemacs
xemacs.i386                               21.5.28-9.fc10               installed
xemacs-common.i386                        21.5.28-9.fc10               installed
xemacs-packages-base.noarch               20070427-1.fc8               installed
xemacs-packages-extra.noarch              20070427-3.fc10              installed

How reproducible:


Steps to Reproduce:
1. open bash shell
2. $ xemacs &
Actual results:

When I start xemacs from the command line, it complains "Warning: Missing charsets in String to FontSet conversion" to standard error.

Expected results:

No warnings.

Additional info:

$ locale

$ yum list installed | grep font
bitmap-fonts.noarch                      0.3-5.1.1              installed       
bitstream-vera-fonts.noarch              1.10-7                 installed       
chkfontpath.i386                         1.10.1-1.1             installed       
dejavu-lgc-fonts.noarch                  2.10-1                 installed       
fontconfig.i386                          2.4.1-3.fc6            installed       
fontconfig-devel.i386                    2.4.1-3.fc6            installed       
ghostscript-fonts.noarch                 5.50-13.1.1            installed       
libXfont.i386                            1.2.8-1.fc6            installed       
libXfont-devel.i386                      1.2.8-1.fc6            installed       
libXfontcache.i386                       1.0.2-3.1              installed       
libXfontcache-devel.i386                 1.0.2-3.1              installed       
libfontenc.i386                          1.0.2-2.1              installed       
libfontenc-devel.i386                    1.0.2-2.1              installed       
mplayer-fonts.noarch                     1.1-3.fc               installed       
msttcorefonts.noarch                     2.0-1                  installed       
tetex-fonts.i386                         3.0-36.fc6             installed       
urw-fonts.noarch                         2.3-6.1.1              installed       
xorg-x11-font-utils.i386                 1:7.1-2                installed       
xorg-x11-fonts-100dpi.noarch             7.1-2                  installed       
xorg-x11-fonts-75dpi.noarch              7.1-2                  installed       
xorg-x11-fonts-ISO8859-1-100dpi.noarch   7.1-2                  installed       
xorg-x11-fonts-ISO8859-1-75dpi.noarch    7.1-2                  installed       
xorg-x11-fonts-Type1.noarch              7.1-2                  installed       
xorg-x11-fonts-base.noarch               7.1-2                  installed       
xorg-x11-fonts-misc.noarch               7.1-2                  installed       
xorg-x11-fonts-truetype.noarch           7.1-2                  installed       

If I use "export LANG=C ; xemacs &" instead of "xemacs &" then no warning occurs.

Comment 1 Ville Skyttä 2009-01-06 13:51:02 UTC
Just a ping back, see also bug 478999.

Comment 2 Carl Brune 2009-01-25 16:57:12 UTC
Installing additional fonts solves the issue, specifically:
  yum install xorg-x11-fonts*
  xorg-x11-fonts-100dpi.noarch 0:7.2-6.fc9
  xorg-x11-fonts-ISO8859-14-100dpi.noarch 0:7.2-6.fc9
  xorg-x11-fonts-ISO8859-14-75dpi.noarch 0:7.2-6.fc9
  xorg-x11-fonts-ISO8859-15-100dpi.noarch 0:7.2-6.fc9
  xorg-x11-fonts-ISO8859-15-75dpi.noarch 0:7.2-6.fc9
  xorg-x11-fonts-ISO8859-2-100dpi.noarch 0:7.2-6.fc9
  xorg-x11-fonts-ISO8859-2-75dpi.noarch 0:7.2-6.fc9
  xorg-x11-fonts-ISO8859-9-100dpi.noarch 0:7.2-6.fc9
  xorg-x11-fonts-ISO8859-9-75dpi.noarch 0:7.2-6.fc9
  xorg-x11-fonts-Type1.noarch 0:7.2-6.fc9
  xorg-x11-fonts-cyrillic.noarch 0:7.2-6.fc9
  xorg-x11-fonts-ethiopic.noarch 0:7.2-6.fc9
  xorg-x11-fonts-misc.noarch 0:7.2-6.fc9

Comment 3 Horst H. von Brand 2009-02-25 13:19:31 UTC
Rawhide, x86_64 up to date. I've got:

xemacs.x86_64                               21.5.28-9.fc10
xemacs-common.x86_64                        21.5.28-9.fc10
xemacs-info.x86_64                          21.5.28-9.fc10
xemacs-packages-base.noarch                 20070427-1.fc8
xemacs-packages-extra.noarch                20070427-4.fc11
xemacs-packages-extra-info.noarch           20070427-4.fc11

and the following X fonts:

xorg-x11-fonts-100dpi.noarch                      7.2-6.fc9
xorg-x11-fonts-75dpi.noarch                       7.2-6.fc9
xorg-x11-fonts-ISO8859-1-100dpi.noarch            7.2-6.fc9
xorg-x11-fonts-ISO8859-1-75dpi.noarch             7.2-6.fc9
xorg-x11-fonts-Type1.noarch                       7.2-6.fc9
xorg-x11-fonts-misc.noarch                        7.2-6.fc9

xemacs crashes (segfaults) on startup.

$ xemacs
Warning: Missing charsets in String to FontSet conversion
Warning: Cannot convert string "-*-helvetica-bold-r-*-*-*-120-*-*-*-*-iso10646-1, 				-*-helvetica-bold-r-*-*-*-120-*-*-*-*-iso8859-*, 				*" to type FontSet
Warning: Missing charsets in String to FontSet conversion
Warning: Unable to load any usable fontset
Warning: Missing charsets in String to FontSet conversion
Warning: Unable to load any usable fontset

Fatal error (11).

Comment 4 Ville Skyttä 2009-03-08 12:21:45 UTC
Could you attach the stack trace for the crash?

Comment 5 Horst H. von Brand 2009-03-08 17:01:37 UTC
Created attachment 334444 [details]
LISP backtrace

Comment 6 Horst H. von Brand 2009-03-08 17:20:22 UTC
Created attachment 334445 [details]
Binary backtrace

The above is from running xemacs in a gnome-terminal. xemacs* packages installed:


Comment 7 Tim Taiwanese Liim 2009-03-08 19:22:08 UTC
*** Bug 489145 has been marked as a duplicate of this bug. ***

Comment 8 Ville Skyttä 2009-03-08 20:44:46 UTC
Let's track the Rawhide crash issue in #489145, it might not be the same one as originally reported here.

Carl, regarding comment 2 - was installing all those packages needed to get rid of the warning or was it just one or some of them?

Comment 9 Carl Brune 2009-03-11 02:05:53 UTC
Ville, I did a little playing around. It appears that only xorg-x11-fonts-misc.noarch is required to make the warning go away.

Comment 10 Ville Skyttä 2009-03-12 16:54:10 UTC
Thanks Carl, I can reproduce and verify that.  Will add a dependency on it in future builds.

Comment 11 Fedora Admin XMLRPC Client 2009-06-15 18:00:06 UTC
This package has changed ownership in the Fedora Package Database.  Reassigning to the new owner of this component.

Comment 12 Garrett Mitchener 2009-06-29 00:28:50 UTC
I've also run into this Missing Charsets error, and I poked around and discovered an old package xorg-x11-fonts-truetype-7.2-3.fc8.noarch installed on my fedora 11 system.  (I've upgraded 8 -> 10 -> 11.)  I removed that package, made sure to have xorg-x11-fonts-misc, ran 'xset fp rehash', and now the error message seems to be gone.

This did keep some parts of xemacs from working -- I had trouble with psvn for example.  And xfontsel gave me the same error before I made the above changes.

Maybe there was something in the 8->9 upgrade system that would have removed this package had I not skipped that step?  Oh well.

Comment 13 Jerry James 2009-07-02 19:44:06 UTC
The situation has changed a little in Fedora 11.  Even with xorg-x11-fonts-misc, I ran into trouble due to bz 507637.  That will be fixed soon.  Even with the fixed cjkuni-fonts packages, I still got the warning, because the X core fonts no longer ship an ISO8859-13 font.  I installed the terminus-fonts package, which does have such a font, and now XEmacs starts silently.  However, I'm reluctant to add a Requires on any particular ISO8859-13 font, especially since many XEmacs users will not have any need of such a font.  So, ultimately, the warning will remain for those who don't install an ISO8859-13 font on their own.

I will push a new XEmacs build soon that has the xorg-x11-fonts-misc Requires, and will close this bug then.

Comment 14 Fedora Update System 2009-08-24 21:57:58 UTC
xemacs-21.5.29-2.fc11 has been submitted as an update for Fedora 11.

Comment 15 Fedora Update System 2009-08-25 22:10:59 UTC
xemacs-21.5.29-2.fc11 has been pushed to the Fedora 11 testing repository.  If problems still persist, please make note of it in this bug report.
 If you want to test the update, you can install it with 
 su -c 'yum --enablerepo=updates-testing update xemacs'.  You can provide feedback for this update here: http://admin.fedoraproject.org/updates/F11/FEDORA-2009-8993

Comment 16 Tim Taiwanese Liim 2009-08-28 21:37:42 UTC
I tried xemacs-21.5.29-2.fc11.x86_64 just now.  It still says this
    [timliim@taiwan ~]$ xemacs
    Warning: Missing charsets in String to FontSet conversion
Which is the symptom of this bug.  Do I need to update other
packages to test?

Comment 17 Jerry James 2009-09-02 17:25:45 UTC
Here is what is going on.  A call to XtCvtStringToFontSet checks whether the resulting FontSet covers every CharSet associated with the calling process's locale.  To see the CharSets associated with a locale, look in the appropriate locale file under /usr/share/X11/locale.

I use the en_US.UTF-8 locale, for example, so I look in /usr/share/X11/locale/en_US.UTF-8/XLC_LOCALE, where I see that X is going to look for the following CharSets: ISO8859-1, ISO8859-2, ISO8859-3, ISO8859-4, ISO8859-5, KOI8-R, ISO8859-7, ISO8859-9, ISO8859-13, ISO8859-14, ISO8859-15, JISX0208.1983, KSC5601.1987, GB2312.1980, JISX0201.1976, and ISO10646.  If I specify a FontSet string that doesn't match fonts for every single one of those CharSets, I'm going to see the warning.

Before handing maintainership over to me, Ville made xemacs Requires: xorg-x11-fonts-misc, which contains fonts for a bunch of CharSets.  The build referred to in comment 15 contains that, making it less likely that end users will see this warning.  In my locale there is still trouble, though, as xorg-x11-fonts-misc does not contain any ISO8859-13 font.  I installed terminus-fonts, which does, just to make the warning go away.  (For those seeing this warning, try running some other application that uses the legacy X font system, such as xfontsel.  You will probably see the same warning.)

The warning is generally harmless.  It just means that you can't view some CharSets, but they're probably CharSets you don't want to view anyway.  Also, ultimately, this warning cannot be eliminated by the application.  It is up to the user to install fonts that cover the appropriate CharSets, and to supply FontSet strings that match those fonts.

With that in mind, I plan to declare this bug as fixed as I can make it once the above build hits stable.  In the meantime, you should also watch out for broken fonts that lie about the CharSets they supply.  See bz 507637 for an example.

Comment 18 Fedora Update System 2009-09-04 04:06:56 UTC
xemacs-21.5.29-2.fc11 has been pushed to the Fedora 11 stable repository.  If problems still persist, please make note of it in this bug report.

Note You need to log in before you can comment on or make changes to this bug.