Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 106143 - gnome-background-properties from control-center-2.12 segfaults at launch due to glib-2.8.1
Summary: gnome-background-properties from control-center-2.12 segfaults at launch due ...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] GNOME (show other bugs)
Hardware: AMD64 Linux
: High normal (vote)
Assignee: Gentoo Linux Gnome Desktop Team
URL:
Whiteboard:
Keywords:
: 106933 (view as bug list)
Depends on:
Blocks: 2.12
  Show dependency tree
 
Reported: 2005-09-15 20:48 UTC by Daniel Ostrow (RETIRED)
Modified: 2005-09-23 16:11 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Daniel Ostrow (RETIRED) gentoo-dev 2005-09-15 20:48:59 UTC
First the unusual things I am using.

I am running a ~amd64 system running nptlonly with modular X.

When the app is launched from a terminal it yeilds the following errors:

(gnome-background-properties:27548): GdkPixbuf-CRITICAL **:
gdk_pixbuf_get_bits_per_sample: assertion `pixbuf != NULL' failed

(gnome-background-properties:27548): GdkPixbuf-CRITICAL **:
gdk_pixbuf_get_width: assertion `pixbuf != NULL' failed

(gnome-background-properties:27548): GdkPixbuf-CRITICAL **:
gdk_pixbuf_get_height: assertion `pixbuf != NULL' failed

(gnome-background-properties:27548): GdkPixbuf-CRITICAL **:
gdk_pixbuf_get_rowstride: assertion `pixbuf != NULL' failed

(gnome-background-properties:27548): GdkPixbuf-CRITICAL **:
gdk_pixbuf_get_has_alpha: assertion `pixbuf != NULL' failed

(gnome-background-properties:27548): GdkPixbuf-CRITICAL **:
gdk_pixbuf_get_pixels: assertion `pixbuf != NULL' failed

Those assertions are confirmed to be non-fatal as they also happen on Cardoe's
system where the app works.

Using FEATURES="nostrip" USE="debug" CFLAGS="-ggdb3" gdb indicates it is a glib
issue:

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 46912585589440 (LWP 27548)]
0x00002aaaaec4abd0 in g_object_unref () from /usr/lib/libgobject-2.0.so.0
(gdb) bt
#0  0x00002aaaaec4abd0 in g_object_unref () from /usr/lib/libgobject-2.0.so.0
#1  0x00000000004097d5 in gnome_wp_item_get_thumbnail (item=0x7d83e0,
thumbs=0x52bf40) at gnome-wp-item.c:276
#2  0x0000000000406240 in wp_props_load_wallpaper (key=0x0, item=0x7d83e0,
capplet=0x52bd80) at gnome-wp-capplet.c:203
#3  0x00002aaaaf22cedd in g_hash_table_foreach () from /usr/lib/libglib-2.0.so.0
#4  0x0000000000407188 in gnome_wp_load_stuffs (data=0x0) at gnome-wp-capplet.c:593
#5  0x00002aaaaf236b86 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#6  0x00002aaaaf23828c in g_main_context_acquire () from /usr/lib/libglib-2.0.so.0
#7  0x00002aaaaf2385b5 in g_main_loop_run () from /usr/lib/libglib-2.0.so.0
#8  0x00002aaaac9473b1 in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0
#9  0x000000000040912a in main (argc=5715744, argv=0x7383c0) at
gnome-wp-capplet.c:1338

Building glib-2.8.1 with FEATURES="nostrip" USE="debug" CFLAGS="-ggdb3" allows
the app to launch but adds the following error to the terminal output:

(gnome-background-properties:27723): GLib-GObject-CRITICAL **: g_object_unref:
assertion `G_IS_OBJECT (object)' failed

Every other control-panel app functions perfectly fine.

Emerge info output:
Portage 2.0.52-r1 (default-linux/amd64/2005.1, gcc-3.4.4, glibc-2.3.5-r1,
2.6.13-gentoo-r1 x86_64)
=================================================================
System uname: 2.6.13-gentoo-r1 x86_64 AMD Athlon(tm) 64 Processor 3000+
Gentoo Base System version 1.12.0_pre8
dev-lang/python:     2.3.5, 2.4.1-r1
sys-apps/sandbox:    1.2.13
sys-devel/autoconf:  2.13, 2.59-r7
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6
sys-devel/binutils:  2.16.1
sys-devel/libtool:   1.5.20
virtual/os-headers:  2.6.11-r2
ACCEPT_KEYWORDS="amd64 ~amd64"
AUTOCLEAN="yes"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -march=athlon64 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config
/usr/share/config /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-O2 -march=athlon64 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoaddcvs autoconfig cvs digest distlocks sandbox sfperms strict"
GENTOO_MIRRORS="http://128.213.5.34/gentoo/ http://mirror.datapipe.net/gentoo"
LANG="en_US.utf8"
LC_ALL="en_US.utf8"
MAKEOPTS="-j3"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/portage/local /usr/local/svnroot/gentopia"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="amd64 X aac aalib acpi alsa avi bash-completion berkdb bitmap-fonts cdr
crypt cups curl dbus dlloader dri dvb dvd dvdr dvdread eds emboss encode esd fam
flac foomaticdb fortran gdbm gif gnome gpm gstreamer gtk gtk2 gtkhtml hal imap
imlib ipv6 jack java jpeg libcaca live lzw lzw-tiff mad matroska mp3 mpeg mythtv
nas ncurses network nls nptl nptlonly nsplugin nvidia offensive ogg oggvorbis
opengl pam pda pdflib perl png portaudio ppds python quicktime readline rtc ruby
samba sdl spell ssl tcltk tcpd tga theora tiff truetype truetype-fonts
type1-fonts unicode usb userlocales vorbis xinerama xml2 xmms xpm xv xvid zlib
userland_GNU kernel_linux elibc_glibc"
Unset:  ASFLAGS, CTARGET, LDFLAGS, LINGUAS
Comment 1 Natanael Copa 2005-09-15 22:54:05 UTC
gnome-backround-properties segfaults on my P4 system too.

I don't know if it is related, but gthumb also segfaults. Could it be something
with the thumbnail creation?


Portage 2.0.52-r1 (default-linux/x86/2005.1, gcc-3.4.4, glibc-2.3.5-r1,
2.6.13-gentoo-r1 i686)
=================================================================
System uname: 2.6.13-gentoo-r1 i686 Intel(R) Pentium(R) 4 CPU 2.40GHz
Gentoo Base System version 1.12.0_pre8
distcc 2.18.3 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [enabled]
ccache version 2.4 [enabled]
dev-lang/python:     2.2.3-r5, 2.3.5, 2.4.1-r1
sys-apps/sandbox:    1.2.13
sys-devel/autoconf:  2.13, 2.59-r7
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6
sys-devel/binutils:  2.16.1
sys-devel/libtool:   1.5.20
virtual/os-headers:  2.6.11-r2
ACCEPT_KEYWORDS="x86 ~x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-march=pentium4 -O3 -pipe -fomit-frame-pointer"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.3/env
/usr/kde/3.3/share/config /usr/kde/3.3/shutdown /usr/kde/3.4/env
/usr/kde/3.4/share/config /usr/kde/3.4/shutdown /usr/kde/3/share/config
/usr/lib/X11/xkb /usr/lib/mozilla/defaults/pref /usr/share/config
/var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/splash /etc/terminfo /etc/texmf/web2c
/etc/env.d"
CXXFLAGS="-march=pentium4 -O3 -pipe -fomit-frame-pointer"
DISTDIR="/var/cache/distfiles"
FEATURES="autoconfig ccache distcc distlocks sandbox sfperms strict"
GENTOO_MIRRORS="ftp://mirror.pudas.net/gentoo http://gentoo.oregonstate.edu
http://www.ibiblio.org/pub/Linux/distributions/gentoo"
LANG="nb_NO"
LINGUAS="sv no en pt"
MAKEOPTS="-j4"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://proxy.nor.example.com/gentoo-portage"
USE="x86 X X509 Xaw3d a52 aac aalib adns aim alsa aotuv apache2 apm arts athena
audiofile avi bash-completion berkdb bitmap-fonts bonobo bzip2 bzlib cairo cddb
cdf cdparanoia cdr codecs crypt cscope css cups curl dbx dga dio directfb
divx4linux djbfft dlloader dnd droproot dts dv dvb dvd dvdread edl eds emacs
emboss encode esd exif fam fame festival ffmpeg fftw flac flash fluidsynth fmod
font-server foomaticdb fortran fpx freetds ftp gcj gd gdbm ggi gif gimp
gimpprint glitz gmail gnome gnome-print gphoto2 gpm gs gstreamer gtk gtk2
gtkhtml guile hal ieee1394 imagemagick imap imlib ipv6 jabber jack java jbig
jpeg jpeg2k kde ladcca ladspa lcms ldap leim libcaca libg++ libwww live lzo lzw
lzw-tiff mad maildir mikmod mime mimencode ming mjpeg mmx mmxext mng monkey
motif mozdevelop mozilla moznocompose moznoirc moznomail mozsvg mozxmlterm mp3
mpeg mpeg4 mplayer msn mssql mysql mythtv nas ncurses network nls nptl nptlonly
ntlm nvidia odbc offensive ogg oggvorbis openal opengl operanom2 oscar oss pam
pdf pdfkit pdflib perl pic png postgres ppds private python qt quicktime rar
readline real rrdtool rtc ruby samba sasl sblive sdl silc slang slp smime
sndfile sox speex spell sse sse2 ssl stream svg svga sysfs tabs tcltk tcpd tetex
tga theora thumbnail tidy tiff timidity transcode truetype truetype-fonts
type1-fonts unicode usb uudeview v4l v4l2 vcd vidix vim vim-pager vim-with-x vlm
vorbis win32codecs wmf wxwindows xanim xface xfs xine xml xml2 xmms xosd xpm
xprint xrandr xscreensaver xv xvid xvmc yahoo yv12 zlib zvbi linguas_sv
linguas_no linguas_en linguas_pt userland_GNU kernel_linux elibc_glibc"
Unset:  ASFLAGS, CTARGET, LC_ALL, LDFLAGS
Comment 2 Natanael Copa 2005-09-15 23:32:17 UTC
More info.

Compiling glib with FEATURES="nostrip" USE="debug" CFLAGS="-ggdb3" makes gthumb
work too, but with the same message:

(gthumb:21513): GLib-GObject-CRITICAL **: g_object_unref: assertion `G_IS_OBJECT
(object)' failed

Comment 3 Natanael Copa 2005-09-15 23:47:13 UTC
Even more info.

In capplets/background/gnome-wp-item.c at line 221 there is an:

if (pixbuf != NULL) { 
   ...
}

Right after that block there is a:

pw = gdk_pixbuf_get_width (pixbuf);
ph = gdk_pixbuf_get_height (pixbuf);

Those generates the warnings, since pixbuf obviously is NULL. Looks like they
handle that. But the "g_object_unref (pixbuf)" does not it makes the capplet
segfault.

Now, I wonder: why is pixbuf NULL at all? Should there be a

if (pixbuf == NULL) return;

statement somewhere before?

I have no experience of gtk/gnome programming, but it looks like there is a
missing check if the pixbuf is created sucessully or not somwhere.

It looks like this is trigged on the creation of thumbnails from SVG files.
Comment 4 John N. Laliberte (RETIRED) gentoo-dev 2005-09-16 04:20:09 UTC
Can you try rebuilding librsvg, libpng, gtk+ and control-center?
( and then restarting your session )

This should fix the problem.
Comment 5 Natanael Copa 2005-09-16 04:43:14 UTC
recompiling librsvg solved this for me. Thanks!
Comment 6 Daniel Ostrow (RETIRED) gentoo-dev 2005-09-16 17:30:10 UTC
Re-emerging librsvg did the trick. I'm marking this bug resolved.
Comment 7 John N. Laliberte (RETIRED) gentoo-dev 2005-09-22 17:24:33 UTC
*** Bug 106933 has been marked as a duplicate of this bug. ***
Comment 8 Leonardo Ferreira Fontenelle 2005-09-23 14:48:41 UTC
(In reply to comment #5)  
> recompiling librsvg solved this for me. Thanks!  
Idem. Maybe because it upgraded 2.11.1 -> 2.12.0.  
bugs.gentoo.org/show_bug.cgi?id=106933 
Comment 9 Leonardo Ferreira Fontenelle 2005-09-23 16:11:39 UTC
(In reply to comment #8)
GDM is now fixed too; it couldn't display "themes", only GTK+ interface.