Bug#407470: gnome-control-center: gnome-font-properties crashes when run in an x11vnc session

Chris Moore dooglus at gmail.com
Thu Jan 18 19:33:25 CET 2007

Package: gnome-control-center
Version: 1:2.14.2-6
Severity: normal

I am running debian sid on a widescreen (1680x1050) laptop, and
accessing it remotely from a Windows machine using the x11vnc
package.  I run the VNC server using this alias:

  vnc is aliased to `cd; nohup x11vnc -display :0 -rfbauth ~/.vnc/passwd &'

The Windows machine has a screen resolution of 1280x1024, so the
laptop's display didn't fit on the screen.  From the Windows machine,
I used the Desktop > Preferences > Screen Resolution dialog to change
the resolution down to 1152x864.  The first time I tried, the VNC
session died, and by the time I had reconnected the "do you want to
keep this resolution" dialog had almost timed out.  I saw it for a
split second before it disappeared.  I didn't get a chance to click
'yes', so the resolution changed back.  I tried again, thinking I'd be
quicker this time, but to my surprise this time the resolution changed
and the VNC session didn't disconnect.  I told it to keep the new

The problem then was that the fonts were huge.  I use a DPI setting of
126 on the laptop, because the pixels are very small.  I ran the
Desktop > Preferences > Font dialog and clicked 'Details' to get to
the DPI setting, but gnome-control-center crashed.  I tried several
times, but it crashed every time I clicked 'Details'.

I downloaded and built the source and ran it in gdb.  Here's the

0x0804e645 in cb_show_details (button=0x807b5f0, parent=0x80c2010)
    at /home/chris/src/gnome-control-center/control-center-2.14.2/./capplets/font/main.c:856
856			dpi = floor ((gdk_screen_width () / gdk_screen_width_mm () +
(gdb) print gdk_screen_height()
$1 = 864
(gdb) print gdk_screen_height_mm()
$2 = 0
(gdb) print gdk_screen_width()
$3 = 1152
(gdb) print gdk_screen_width_mm()
$4 = 0
(gdb) where
#0  0x0804e645 in cb_show_details (button=0x807b5f0, parent=0x80c2010)
    at /home/chris/src/gnome-control-center/control-center-2.14.2/./capplets/font/main.c:856
#1  0xb78d5e1b in g_cclosure_marshal_VOID__VOID () from /usr/lib/libgobject-2.0.so.0
#2  0xb78c898b in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0

It's dividing by zero because for some reason the screen width and height in millimetres are both zero.  I made a typescript of the gdb session, which I will attach to this if I can work out how.

-- System Information:
Debian Release: 4.0
  APT prefers unstable
  APT policy: (500, 'unstable')
Architecture: i386 (i686)
Shell:  /bin/sh linked to /bin/bash
Kernel: Linux
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8)

Versions of packages gnome-control-center depends on:
ii  capplets-data             1:2.14.2-6     configuration applets for GNOME 2 
ii  desktop-file-utils        0.11-1         Utilities for .desktop files
ii  gnome-desktop-data        2.14.3-1       Common files for GNOME 2 desktop a
ii  gnome-icon-theme          2.14.2-2       GNOME Desktop icon theme
ii  gnome-menus               2.16.1-2       an implementation of the freedeskt
ii  libart-2.0-2              2.3.17-1       Library of functions for 2D graphi
ii  libatk1.0-0               1.12.4-1       The ATK accessibility toolkit
ii  libaudiofile0             0.2.6-6        Open-source version of SGI's audio
ii  libavahi-client3          0.6.16-2       Avahi client library
ii  libavahi-common3          0.6.16-2       Avahi common library
ii  libavahi-glib1            0.6.16-2       Avahi glib integration library
ii  libbonobo2-0              2.14.0-3       Bonobo CORBA interfaces library
ii  libbonoboui2-0            2.14.0-5       The Bonobo UI library
ii  libc6                     2.3.6.ds1-10   GNU C Library: Shared libraries
ii  libcairo2                 1.2.4-4        The Cairo 2D vector graphics libra
ii  libdbus-1-3               1.0.2-1        simple interprocess messaging syst
ii  libebook1.2-5             1.6.3-3        Client library for evolution addre
ii  libesd0                   0.2.36-3       Enlightened Sound Daemon - Shared 
ii  libfontconfig1            2.4.2-1        generic font configuration library
ii  libfreetype6              2.2.1-5        FreeType 2 font engine, shared lib
ii  libgconf2-4               2.16.0-3       GNOME configuration database syste
ii  libgcrypt11               1.2.3-2        LGPL Crypto library - runtime libr
ii  libglade2-0               1:2.6.0-4      library to load .glade files at ru
ii  libglib2.0-0              2.12.6-2       The GLib library of C routines
ii  libgnome-desktop-2        2.14.3-1       Utility library for loading .deskt
ii  libgnome-keyring0         0.6.0-3        GNOME keyring services library
ii  libgnome-menu2            2.16.1-2       an implementation of the freedeskt
ii  libgnome-window-settings1 1:2.14.2-6     Utility library for getting window
ii  libgnome2-0               2.16.0-2       The GNOME 2 library - runtime file
ii  libgnomecanvas2-0         2.14.0-2       A powerful object-oriented display
ii  libgnomeui-0              2.14.1-2       The GNOME 2 libraries (User Interf
ii  libgnomevfs2-0            2.14.2-4       GNOME virtual file-system (runtime
ii  libgnutls13               1.4.4-3        the GNU TLS library - runtime libr
ii  libgpg-error0             1.4-2          library for common error values an
ii  libgstreamer-plugins-base 0.10.10-2      GStreamer libraries from the "base
ii  libgstreamer0.10-0        0.10.10-2      Core GStreamer libraries and eleme
ii  libgtk2.0-0               2.8.20-4       The GTK+ graphical user interface 
ii  libice6                   1:1.0.1-2      X11 Inter-Client Exchange library
ii  libjpeg62                 6b-13          The Independent JPEG Group's JPEG 
ii  libmetacity0              1:2.14.5-2     library of lightweight GTK2 based 
ii  libnautilus-extension1    2.14.3-7       libraries for nautilus components 
ii  liborbit2                 1:2.14.4-1     libraries for ORBit2 - a CORBA ORB
ii  libpango1.0-0             1.14.8-5       Layout and rendering of internatio
ii  libpng12-0                1.2.15~beta5-1 PNG library - runtime
ii  libpopt0                  1.10-3         lib for parsing cmdline parameters
ii  libsm6                    1:1.0.1-3      X11 Session Management library
ii  libstartup-notification0  0.8-2          library for program launch feedbac
ii  libtasn1-3                0.3.6-2        Manage ASN.1 structures (runtime)
ii  libx11-6                  2:1.0.3-4      X11 client-side library
ii  libxcursor1               1.1.7-4        X cursor management library
ii  libxext6                  1:1.0.1-2      X11 miscellaneous extension librar
ii  libxfixes3                1:4.0.1-5      X11 miscellaneous 'fixes' extensio
ii  libxft2               FreeType-based font drawing librar
ii  libxi6                    1:1.0.1-4      X11 Input extension library
ii  libxinerama1              1:1.0.1-4.1    X11 Xinerama extension library
ii  libxklavier10             2.2-4          X Keyboard Extension high-level AP
ii  libxml2                   2.6.27.dfsg-1  GNOME XML library
ii  libxrandr2                2:    X11 RandR extension library
ii  libxrender1               1:0.9.1-3      X Rendering Extension client libra
ii  libxss1                   1:1.1.0-1      X11 Screen Saver extension library
ii  libxxf86misc1             1:1.0.1-2      X11 XFree86 miscellaneous extensio
ii  zlib1g                    1:1.2.3-13     compression library - runtime

Versions of packages gnome-control-center recommends:
ii  bzip2                         1.0.3-6    high-quality block-sorting file co
ii  evolution-data-server         1.6.3-3    evolution database backend server
ii  gnome-session                 2.14.3-5   The GNOME 2 Session Manager
ii  gnome-user-guide              2.14.2-2   GNOME user's guide

-- no debconf information

More information about the Pkg-gnome-maintainers mailing list