================================================================
Dear Bug Team!
Running xemacs 21.4.15 on a gentoo system, (list-fonts "*") only
returns 5000 fonts, although on my system XListFonts returns 12836
fonts. The result is that when I am using a font that doesn't happen
to be in the first 5000 according to whatever bizarre order X uses, if
I go to the Options menu and click on Font, I get a greyed out "Cannot
parse current font" (which is wrong: the font was parsed fine, it just
wasn't found in the cache).
This is because in src/objects-x.c, we find:
/* Unbounded, for sufficiently small values of infinity... */
#define MAX_FONT_COUNT 5000
and then
x_list_fonts (Lisp_Object pattern, Lisp_Object device)
{
Extbyte **names;
int count = 0;
Lisp_Object result = Qnil;
const Extbyte *patternext;
LISP_STRING_TO_EXTERNAL (pattern, patternext, Qx_font_name_encoding);
names = XListFonts (DEVICE_X_DISPLAY (XDEVICE (device)),
patternext, MAX_FONT_COUNT, &count);
while (count--)
result = Fcons (build_ext_string (names[count], Qx_font_name_encoding),
result);
if (names)
XFreeFontNames (names);
return result;
}
Could 5000 be replaced with a number that is unbounded for a somewhat
larger value of infinity? (I replaced it with 32768 and recompiled,
and the problem went away). Also, it would be nice if when this limit
is exceeded a more useful error message was given (since it took me a
couple of hours to track this down).
================================================================
System Info to help track down your bug:
---------------------------------------
uname -a: Linux p-chan 2.6.8-gentoo-r3 #1 Sat Aug 28 16:42:04 PDT 2004 i686 AMD Athlon(tm) XP 1900+ AuthenticAMD GNU/Linux
./configure '--with-widgets=lucid' '--with-dialogs=lucid' '--with-scrollbars=lucid' '--with-menubars=lucid' '--with-gif=no' '--with-tiff' '--with-png' '--with-jpeg' '--without-xface' '--with-gpm' '--without-postgresql' '--without-ldap' '--with-mule' '--with-xim=xlib' '--with-canna' '--with-wnn' '--with-sound=native' '--with-database=gnudbm' '--prefix=/usr' '--with-pop' '--with-ncurses' '--with-msw=no' '--mail-locking=flock' '--with-site-lisp=yes' '--with-site-modules=yes'
XEmacs 21.4.15 "Security Through Obscurity" configured for `i686-pc-linux'.
Compilation / Installation:
Source code location: /var/tmp/portage/xemacs-21.4.15-r2/work/xemacs-21.4.15
Installation prefix: /usr
Operating system description file: `s/linux.h'
Machine description file: `m/intel386.h'
Compiler: gcc -g -O2
Compiler version: gcc (GCC) 3.3.4 20040623 (Gentoo Linux 3.3.4-r1, ssp-3.3.2-2, pie-8.7.6)
Compiler specs file: /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/specs
Relocating allocator for buffers: no
GNU version of malloc: yes
- Using Doug Lea's new malloc from the GNU C Library.
Need to guess glibc1/2/etc here
Window System:
Compiling in support for the X window system:
- X Windows headers location: /usr/X11R6/include
- X Windows libraries location: /usr/X11R6/lib
- Handling WM_COMMAND properly.
Compiling in support for the Athena widget set:
- Athena headers location: X11/Xaw
- Athena library to link: Xaw
Using Lucid menubars.
Using Lucid scrollbars.
Using Athena dialog boxes.
Using Athena native widgets.
TTY:
Compiling in support for ncurses.
Compiling in support for GPM (General Purpose Mouse).
Images:
Compiling in support for XPM images.
Compiling in support for PNG images.
Compiling in support for JPEG images.
Compiling in support for TIFF images.
Sound:
Compiling in support for sound (native).
Databases:
Compiling in support for GNU DBM.
Internationalization:
Compiling in support for Mule (multi-lingual Emacs).
Compiling in support for XIM (X11R5+ I18N input method).
- Using raw Xlib to provide XIM support.
Compiling in support for Canna on Mule.
Compiling in support for the WNN input method on Mule.
Mail:
Compiling in support for POP mail retrieval.
Compiling in support for "flock" mail spool file locking method.
Other Features:
Inhibiting IPv6 canonicalization at startup.
Compiling in support for dynamic shared object modules.
Using the new portable dumper.
Load-Path Lisp Shadows:
----------------------
(/home/purtill/elisp/desktop
/usr/lib/xemacs/xemacs-packages/lisp/edit-utils/desktop
/home/purtill/elisp/rubydb3x
/usr/lib/xemacs/xemacs-packages/lisp/ruby-modes/rubydb3x
/home/purtill/elisp/ruby-mode
/usr/lib/xemacs/xemacs-packages/lisp/ruby-modes/ruby-mode
/home/purtill/elisp/inf-ruby
/usr/lib/xemacs/xemacs-packages/lisp/ruby-modes/inf-ruby
/usr/lib/xemacs/xemacs-packages/lisp/build/build-report
/usr/lib/xemacs-21.4.15/lisp/build-report)
Installed XEmacs Packages:
-------------------------
(zenirc ver: 1.15 upstream: 2.112)
(xwem ver: 1.14 upstream: 0.2)
(xslt-process ver: 1.11 upstream: regular)
(xslide ver: 1.09 upstream: 0.2.2)
(xlib ver: 1.12 upstream: 0.2)
(xemacs-devel ver: 1.64 upstream: No-Upstream-Ver)
(xemacs-base ver: 1.87 upstream: No-Upstream-Ver)
(x-symbol ver: 1.1 upstream: 4.5.1)
(w3 ver: 1.3 upstream: 4.0pre47)
(vm ver: 7.18 upstream: 7.17)
(viper ver: 1.37 upstream: 3.09)
(view-process ver: 1.13 upstream: 2.4)
(vhdl ver: 1.19 upstream: 3.32.20)
(vc-cc ver: 1.22 upstream: No-Upstream-Ver)
(vc ver: 1.38 upstream: No-Upstream-Ver)
(tramp ver: 1.17 upstream: 2.0.35)
(tpu ver: 1.14 upstream: 4.2X)
(tooltalk ver: 1.15 upstream: No-Upstream-Ver)
(tm ver: 1.37 upstream: No-Upstream-Ver)
(time ver: 1.14 upstream: 1.17)
(textools ver: 1.15 upstream: No-Upstream-Ver)
(text-modes ver: 1.78 upstream: No-Upstream-Ver)
(texinfo ver: 1.25 upstream: No-Upstream-Ver)
(supercite ver: 1.2 upstream: 3.55x3)
(strokes ver: 1.1 upstream: No-Upstream-Ver)
(speedbar ver: 1.27 upstream: 0.14beta4)
(sounds-wav ver: 1.12 upstream: No-Upstream-Ver)
(sounds-au ver: 1.12 upstream: No-Upstream-Ver)
(sml-mode ver: 0.11 upstream: 3.9.5)
(slider ver: 1.15 upstream: 0.3x1)
(sieve ver: 1.16 upstream: No-Upstream-Ver)
(sh-script ver: 1.18 upstream: 2.0e)
(sgml ver: 1.11 upstream: No-Upstream-Ver)
(semantic ver: 1.18 upstream: 1.4.2)
(scheme ver: 1.14 upstream: No-Upstream-Ver)
(sasl ver: 1.14 upstream: 1.14.4)
(ruby-modes ver: 1.02 upstream: 1.6.8)
(rmail ver: 1.14 upstream: No-Upstream-Ver)
(riece ver: 1.15 upstream: 0.2.2)
(reftex ver: 1.34 upstream: 4.21)
(python-modes ver: 1.06 upstream: No-Upstream-Ver)
(psgml-dtds ver: 1.03 upstream: No-Upstream-Ver)
(psgml ver: 1.43 upstream: 1.3.1)
(ps-print ver: 1.11 upstream: 6.5.6)
(prog-modes ver: 2.01 upstream: No-Upstream-Ver)
(pgg ver: 1.04 upstream: 0.1)
(perl-modes ver: 1.06 upstream: No-Upstream-Ver)
(pcomplete ver: 1.03 upstream: 1.1.6)
(pcl-cvs ver: 1.65 upstream: R-2_9_9)
(pc ver: 1.26 upstream: No-Upstream-Ver)
(os-utils ver: 1.35 upstream: No-Upstream-Ver)
(oo-browser ver: 1.04 upstream: 4.08)
(ocaml ver: 0.05 upstream: 3.06)
(net-utils ver: 1.44 upstream: N/A)
(mmm-mode ver: 1.02 upstream: 0.4.7)
(misc-games ver: 1.18 upstream: No-Upstream-Ver)
(mine ver: 1.16 upstream: 1.9)
(mh-e ver: 1.28 upstream: 7.4.2)
(mew ver: 1.18 upstream: 1.94.2)
(mailcrypt ver: 2.14 upstream: 3.5.8)
(mail-lib ver: 1.67 upstream: No-Upstream-Ver)
(liece ver: 1.13 upstream: 1.4.9)
(jde ver: 1.46 upstream: regular)
(ispell ver: 1.29 upstream: 3.6)
(ilisp ver: 1.33 upstream: 5.12.0)
(igrep ver: 1.13 upstream: 2.111)
(idlwave ver: 1.31 upstream: 5.1)
(ibuffer ver: 1.09 upstream: No-Upstream-Ver)
(hyperbole ver: 1.16 upstream: 4.18)
(hm--html-menus ver: 1.23 upstream: 5.9)
(haskell-mode ver: 1.07 upstream: 1.45)
(gnus ver: 1.8 upstream: 5.10.6)
(gnats ver: 1.16 upstream: 3.101)
(general-docs ver: 1.01 upstream: No-Upstream-Ver)
(games ver: 1.15 upstream: 1.04)
(fsf-compat ver: 1.14 upstream: No-Upstream-Ver)
(frame-icon ver: 1.11 upstream: No-Upstream-Ver)
(fortran-modes ver: 1.04 upstream: No-Upstream-Ver)
(forms ver: 1.15 upstream: 2.37)
(footnote ver: 1.16 upstream: 0.18x)
(eudc ver: 1.39 upstream: 1.32)
(eterm ver: 1.15 upstream: No-Upstream-Ver)
(ess ver: 1.1 upstream: 5.2.2)
(eshell ver: 1.07 upstream: 2.4.1)
(escreen ver: 1.01 upstream: 1.16)
(erc ver: 0.12 upstream: Version 4.0 Revision: 1.675)
(emerge ver: 1.11 upstream: No-Upstream-Ver)
(elib ver: 1.11 upstream: 1.0)
(eieio ver: 1.05 upstream: 0.17)
(efs ver: 1.32 upstream: 1.22)
(edt ver: 1.13 upstream: No-Upstream-Ver)
(edit-utils ver: 2.14 upstream: No-Upstream-Ver)
(ediff ver: 1.5 upstream: 2.75)
(edebug ver: 1.21 upstream: No-Upstream-Ver)
(ecrypto ver: 0.17 upstream: 2.0)
(ecb ver: 1.18 upstream: 2.24)
(docbookide ver: 0.07000000000000001 upstream: 0.1)
(dired ver: 1.15 upstream: 7.11)
(dictionary ver: 1.12 upstream: regular)
(debug ver: 1.17 upstream: No-Upstream-Ver)
(crisp ver: 1.14 upstream: 1.34)
(cookie ver: 1.15 upstream: No-Upstream-Ver)
(clearcase ver: 1.08 upstream: No-Upstream-Ver)
(cc-mode ver: 1.43 upstream: 5.30.9)
(calendar ver: 1.23 upstream: No-Upstream-Ver)
(calc ver: 1.25 upstream: 2.02fX3)
(c-support ver: 1.2 upstream: No-Upstream-Ver)
(build ver: 1.14 upstream: 2.02)
(bbdb ver: 1.24 upstream: 2.34)
(auctex ver: 1.38 upstream: 11.14)
(apel ver: 1.27 upstream: 10.2)
(ada ver: 1.14 upstream: 2.27)
(skk ver: 1.23 upstream: regular)
(mule-ucs ver: 1.06 upstream: 0.84)
(mule-base ver: 1.46 upstream: No-Upstream-Ver)
(lookup ver: 1.14 upstream: 1.0)
(locale ver: 1.21 upstream: No-Upstream-Ver)
(leim ver: 1.22 upstream: No-Upstream-Ver)
(latin-unity ver: 1.1 upstream: 1.10)
(egg-its ver: 1.27 upstream: No-Upstream-Ver)
(edict ver: 1.16 upstream: 0.9.9)
Installed Modules:
-----------------
Features:
--------
(xemacsbug shadow info sh-script executable comint ring man passwd
tar-mode apropos vm-reply cus-edit cus-load x-font-menu font-menu
view-less view hyper-apropos env annotations flow-fill browse-url
vm-virtual vm-macro vm-delete bbdb-gui vm-undo vm-sort vm-page vm-mime
vm-save vm-toolbar vm-summary tapestry vm-motion vm-message vm-menu
vm-folder vm-misc vm-window sort gnus-cite gnus-async gnus-bcklg
byte-optimize bytecomp byte-compile gnus-ml nndraft nnmh bbdb-gnus
gnus-agent gnus-srvr gnus-score score-mode nnvirtual gnus-msg gnus-art
mm-uu mml2015 pgg pgg-parse pgg-def mm-view gnus-sum gnus-group
gnus-undo nntp nnoo nnmail mail-source format-spec gnus-cache
gnus-start gnus-spec gnus-int gnus-range message mml mml-sec mml-smime
smime dig mm-decode mm-bodies mm-encode mailcap lpr mail-parse rfc2045
rfc2231 rfc2047 qp ietf-drums mailheader canlock gnus-win gnus
gnus-ems gnus-xmas messagexmas nnheader nnheaderxm gnus-util netrc
time-date parse-time mail-utils mm-util mail-prsvr wid-edit mpx my-skk
skk-cursor skk skk-foreword queue-m alist pcustom poem poem-xm pces
pces-xfc pces-20 broken pces-xm poe-xemacs timer overlay poe pym
static apel-ver product my-dired find-dired my-cc-mode cc-mode
cc-fonts cc-menus cc-cmds cc-styles cc-align cc-engine cc-vars cc-defs
p-chan-init local edict edict-japanese edict-english edict-morphology
edict-edit dui-registry dui un-define mule-uni my-ispell bbdb-vm
bbdb-snarf mail-extr bbdb-com bbdb timezone linux-init mail-abbrevs
sendmail rfc822 my-gnus sml-mode skeleton sml-move sml-defs regexp-opt
sml-util sml-compat ispell unix-init vc-hooks my-calendar efs-cu
diary-lib cal-french calendar time my-psgml compile psgml-parse
psgml-xemacs psgml-sysdep psgml-edit tempo sgml-mode psgml psgml-html
crypt crypt++ my-menubar my-vm vm-minibuf my-vm-minibuf vm-mouse
vm-autoload vm-vars highlight-headers vm-startup vm-version vm gnuserv
xemacs-init my-ediff ediff-merg ediff-diff ediff-tbar ediff-wind
ediff-help ediff-util ediff-mult ediff-init ediff font mwheel
mrp-overwrite x-compose iso-syntax disp-table pcl-cvs diff-mode advice
advice-preload easy-mmode pcl-cvs-parse pcl-cvs-info pcl-cvs-defs
pcl-cvs-util cvs-compat dired-faces dired-xemacs dired cookie dll
elib-node font-lock cus-face pointer pending-del mrplib
zenirc-autoloads xwem-autoloads xslt-process-autoloads
xslide-autoloads xlib-autoloads xemacs-devel-autoloads
xemacs-base-autoloads x-symbol-autoloads w3-autoloads vm-autoloads
viper-autoloads view-process-autoloads vhdl-autoloads vc-cc-autoloads
vc-autoloads tramp-autoloads tpu-autoloads tooltalk-autoloads
tm-autoloads time-autoloads textools-autoloads text-modes-autoloads
texinfo-autoloads supercite-autoloads strokes-autoloads
speedbar-autoloads sounds-wav-autoloads sounds-au-autoloads
sml-mode-autoloads slider-autoloads sieve-autoloads
sh-script-autoloads sgml-autoloads semantic-autoloads scheme-autoloads
sasl-autoloads ruby-modes-autoloads rmail-autoloads riece-autoloads
reftex-autoloads python-modes-autoloads psgml-dtds-autoloads
psgml-autoloads ps-print-autoloads prog-modes-autoloads pgg-autoloads
perl-modes-autoloads pcomplete-autoloads pcl-cvs-autoloads
pc-autoloads os-utils-autoloads oo-browser-autoloads ocaml-autoloads
net-utils-autoloads mmm-mode-autoloads misc-games-autoloads
mine-autoloads mh-e-autoloads mew-autoloads mailcrypt-autoloads
mail-lib-autoloads liece-autoloads jde-autoloads ispell-autoloads
ilisp-autoloads igrep-autoloads idlwave-autoloads ibuffer-autoloads
hyperbole-autoloads hm--html-menus-autoloads haskell-mode-autoloads
gnus-autoloads gnats-autoloads general-docs-autoloads games-autoloads
fsf-compat-autoloads frame-icon-autoloads fortran-modes-autoloads
forms-autoloads footnote-autoloads eudc-autoloads eterm-autoloads
ess-autoloads eshell-autoloads escreen-autoloads erc-autoloads
emerge-autoloads elib-autoloads eieio-autoloads efs-autoloads
edt-autoloads edit-utils-autoloads ediff-autoloads edebug-autoloads
ecrypto-autoloads ecb-autoloads docbookide-autoloads dired-autoloads
dictionary-autoloads debug-autoloads crisp-autoloads cookie-autoloads
clearcase-autoloads cc-mode-autoloads calendar-autoloads
calc-autoloads c-support-autoloads build-autoloads bbdb-autoloads
auctex-autoloads apel-autoloads ada-autoloads skk-autoloads
mule-ucs-autoloads mule-base-autoloads lookup-autoloads
locale-autoloads leim-autoloads latin-unity-autoloads
egg-its-autoloads edict-autoloads lisp-autoloads loadhist auto-show
fontl-hooks x-iso8859-1 canna-leim slovenian czech romanian ccl
mule-help code-cmds gutter-items menubar-items x-menubar mode-motion
mouse itimer auto-save lisp-mode easymenu iso8859-1 page buff-menu
lib-complete cus-file derived frame text-props obsolete cus-start
custom widget cl-extra mini-cl cl cl-19 packages backquote
very-early-lisp CANNA file-coding wnn mule lucid-scrollbars cut-buffer
lucid-menubars athena-dialogs x c-balloon-help tty-frames tty toolbar
native-sound scrollbar unix-processes multicast network-streams
subprocesses modules menu-accelerator-support menubar dbm md5 xemacs
xim gutter tiff png jpeg xpm xbm lisp-float-type linux dialog devices
window-system base64)
Recent keystrokes:
-----------------
button5up button5 button5up button5 button5up button5
button5up button5 button5up button5 button5up button5
button5up button5 button5up button5 button5up button5
button5up button5 button5up button5 button5up button5
button5up button5 button5up button5 button5up button5
button5up button5 button5up button5 button5up button5
button5up button5 button5up button5 button5up button5
button5up button5 button5up button5 button5up button5
button5up button5 button5up button4 button4up button4
button4up button4 button4up button4 button4up button2
button2up C-x 1 button4 button4up button4 button4up
button4 button4up button4 button4up button4 button4up
button4 button4up button4 button4up button4 button4up
button4 button4up button4 button4up button4 button4up
button4 button4up button2 button2up ESC x : BS button1
button1up button1 button1up button2 button2up RET
Recent messages (most recent first):
-----------------------------------
Loading xemacsbug...done
Loading xemacsbug...
Selecting menu item Bugs...done
gzip -dc /usr/info/xemacs.info-3.gz...
Selecting menu item Bugs...
gzip -dc /usr/info/xemacs.info-1.gz...
gzip -dc /usr/info/xemacs.info.gz...
Composing main Info directory...done
Creating temporary dir in /usr/lib/xemacs/mule-packages/info/...done
(New file)
Creating temporary dir in /usr/lib/xemacs/mule-packages/info/...
Creating temporary dir in /usr/lib/xemacs/xemacs-packages/info/...done
(New file)
Creating temporary dir in /usr/lib/xemacs/xemacs-packages/info/...
Rebuilding temporary /usr/share/gcc-data/i686-pc-linux-gnu/3.3/info/dir...done
Rebuilding temporary /usr/share/gcc-data/i686-pc-linux-gnu/3.3/info/dir...
Note: file is write protected
Rebuilding temporary /usr/share/info/dir...done
Rebuilding temporary /usr/share/info/dir...
Note: file is write protected
^.-.^ Mark Purtill <purtill(a)alum.mit.edu> or (425)454-8387
((")) 316 118th Avenue SE, Apartment 23, Bellevue WA 98005