Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 109159 - media-video/gxine wizard segfaults when asked to register mime-types to Gnome.
Summary: media-video/gxine wizard segfaults when asked to register mime-types to Gnome.
Status: RESOLVED WORKSFORME
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: AMD64 Linux
: High minor (vote)
Assignee: Gentoo Media-video project
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-10-13 09:14 UTC by Bruno Roggeri
Modified: 2008-10-12 20:32 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 Bruno Roggeri 2005-10-13 09:14:36 UTC
After successful compilation of gxine 0.4.8, I tried to launch it on my mostly  
KDE-esque laptop. The "gxine setup wizards" pops up, do some checks on my 
system, then ask me if I want to register it as a media handler in mailcap, 
Mozilla, Gnome and/or KDE. 
If i leave the "Gnome" tickbox checked, clicking on next makes it segfault. If 
I uncheck the box, it works. 

Reproducible: Always
Steps to Reproduce:
1. emerge =media-video/gxine-0.4.8  
2. launch gxine  
3. when the setup wizards appears, click "next" twice 
  
Actual Results:  
gxine crashes 

Expected Results:  
It should tell me that it couldn't register to Gnome/nautilus, and continue 
without crashing. 
Or better : the Gnome option should be disabled if gnome isn't present. 

Portage 2.0.51.22-r3 (default-linux/amd64/2005.1, gcc-3.4.4, glibc-2.3.5-r2, 
2.6.13-gentoo x86_64) 
================================================================= 
System uname: 2.6.13-gentoo x86_64 AMD Athlon(tm) 64 Processor 3000+ 
Gentoo Base System version 1.6.13 
dev-lang/python:     2.3.5-r2, 2.4.1-r1 
sys-apps/sandbox:    1.2.12 
sys-devel/autoconf:  2.13, 2.59-r6 
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r1 
sys-devel/binutils:  2.15.92.0.2-r10 
sys-devel/libtool:   1.5.20 
virtual/os-headers:  2.6.11-r2 
ACCEPT_KEYWORDS="amd64" 
AUTOCLEAN="yes" 
CBUILD="x86_64-pc-linux-gnu" 
CFLAGS="-march=k8 -O2 -pipe" 
CHOST="x86_64-pc-linux-gnu" 
CONFIG_PROTECT="/etc /usr/kde/2/share/config /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/share/config /var/qmail/control" 
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" 
CXXFLAGS="-march=k8 -O2 -pipe" 
DISTDIR="/usr/portage/distfiles" 
FEATURES="autoconfig distlocks sandbox sfperms strict" 
GENTOO_MIRRORS="http://ftp.heanet.ie/pub/gentoo/ 
ftp://ftp.heanet.ie/pub/gentoo/ ftp://ftp.du.se/pub/os/gentoo 
http://ds.thn.htu.se/linux/gentoo ftp://mirror.pudas.net/gentoo" 
LC_ALL="fr_FR.UTF-8" 
LINGUAS="fr" 
MAKEOPTS="-j2" 
PKGDIR="/usr/portage/packages" 
PORTAGE_TMPDIR="/var/tmp" 
PORTDIR="/usr/portage" 
PORTDIR_OVERLAY="/usr/local/portage" 
SYNC="rsync://rsync.nl.gentoo.org/gentoo-portage" 
USE="amd64 X a52 aac aalib alsa avi berkdb bitmap-fonts cdr crypt cups curl 
doc dts dvd eds emboss encode fam fbcon ffmpeg flac foomaticdb fortran gdbm 
gif gphoto2 gpm gstreamer gtk2 imagemagick imlib ipv6 java jpeg junit kde lzw 
lzw-tiff mad mng mp3 mpeg ncurses nls nptl nptlonly nvidia ogg oggvorbis 
opengl pam pdflib perl png python qt quicktime readline ruby sdl speex spell 
sqlite ssl tcltk tcpd theora tiff truetype-fonts type1-fonts unicode usb 
userlocales vorbis xine xml2 xpm xv zlib linguas_fr userland_GNU kernel_linux 
elibc_glibc" 
Unset:  ASFLAGS, CTARGET, LANG, LDFLAGS
Comment 1 Bruno Roggeri 2005-10-14 05:14:54 UTC
I think I should add that although I don't have nautilus installed, I have 
gnome-vfs-2.10.1-r1 . 
Comment 2 Bruno Roggeri 2005-10-14 05:35:59 UTC
OK, maybe it's not exactly how I thought. Here is what happens when I launch 
gxine after having removed ~/.gxine. For each step I have copied what appears 
on stdout/stderr. 
 
1. gxine starts and the wizards pops up 
 
(gxine:9640): Gtk-CRITICAL **: gtk_window_set_default_icon: assertion 
`GDK_IS_PIXBUF (icon)' failed 
Gtk-Message: The filename "2D1592+studiebes\303\266k.doc" couldn't be converted 
to UTF-8. (try setting the environment variable G_FILENAME_ENCODING): Invalid 
byte sequence in conversion input 
 
 
2. I click "Forward", and some tests are performed : 
 
  sysname: Linux 
  release: 2.6.13-gentoo 
  machine: x86_64 
X-Video Extension version 2.2 
video_out_xv: Xv image format: 0x32595559 (YUY2) packed 
video_out_xv: this adaptor supports the yuy2 format. 
video_out_xv: Xv image format: 0x32315659 (YV12) planar 
video_out_xv: this adaptor supports the yv12 format. 
video_out_xv: Xv image format: 0x59565955 (UYVY) packed 
video_out_xv: Xv image format: 0x30323449 (I420) planar 
 
3. I click "Forward" again, and i deselect "~/.mailcap" and "KDE / Konqueror", 
so that only "Gnome / Nautilus" is left checked (and "Mozilla / Mozilla 
Firefox" is just insensitive, as they should be as the nsplugin use flag was 
disabled during compilation). 
 
4. I click "Forward" again, and gxine tries to register itself but segfaults : 
 
desktop_integration: registering xine for mime type 'application/x-annodex' 
 
(gxine:9640): libgnomevfs-WARNING **: Deprecated function.  User modifications 
to the MIME database are no longer supported. 
desktop_integration: registering xine for mime type 'audio/x-ogg' 
 
(gxine:9640): libgnomevfs-WARNING **: Deprecated function.  User modifications 
to the MIME database are no longer supported. 
desktop_integration: registering xine for mime type 'audio/x-speex' 
 
(gxine:9640): libgnomevfs-WARNING **: Deprecated function.  User modifications 
to the MIME database are no longer supported. 
desktop_integration: registering xine for mime type 'application/x-ogg' 
 
(gxine:9640): libgnomevfs-WARNING **: Deprecated function.  User modifications 
to the MIME database are no longer supported. 
desktop_integration: registering xine for mime type 'image/png' 
 
(gxine:9640): libgnomevfs-WARNING **: Deprecated function.  User modifications 
to the MIME database are no longer supported. 
desktop_integration: registering xine for mime type 'image/x-png' 
 
(gxine:9640): libgnomevfs-WARNING **: Deprecated function.  User modifications 
to the MIME database are no longer supported. 
desktop_integration: registering xine for mime type 'video/mng' 
 
(gxine:9640): libgnomevfs-WARNING **: Deprecated function.  User modifications 
to the MIME database are no longer supported. 
desktop_integration: registering xine for mime type 'video/x-mng' 
 
(gxine:9640): libgnomevfs-WARNING **: Deprecated function.  User modifications 
to the MIME database are no longer supported. 
desktop_integration: registering xine for mime type 'audio/x-aiff' 
 
(gxine:9640): libgnomevfs-WARNING **: Deprecated function.  User modifications 
to the MIME database are no longer supported. 
. 
. 
. The list is long as gxine tries to register 
. all the media files it can handle ... 
. 
. 
desktop_integration: registering xine for mime type 'audio/mp3' 
 
(gxine:9640): libgnomevfs-WARNING **: Deprecated function.  User modifications 
to the MIME database are no longer supported. 
desktop_integration: registering xine for mime type 'audio/x-mp3' 
 
(gxine:9640): libgnomevfs-WARNING **: Deprecated function.  User modifications 
to the MIME database are no longer supported. 
desktop_integration: registering xine for mime type 'application/x-flac' 
 
(gxine:9640): libgnomevfs-WARNING **: Deprecated function.  User modifications 
to the MIME database are no longer supported. 
Segmentation fault 
 
______________________________________ 
 
It appears that gxine is trying to register itself in a deprecated way ... 
Comment 3 Diego Elio Pettenò (RETIRED) gentoo-dev 2005-10-30 15:35:29 UTC
Can you try with 0.5.0 ? 
Comment 4 Bruno Roggeri 2005-10-31 01:17:53 UTC
(In reply to comment #3) 
> Can you try with 0.5.0 ?  
 
Compiled 0.5.0 with FEATURES="nostrip". The gnome registering procedure has 
been fixed not to use the old gnome-vfs calls, but the segfault still happens 
just after registration. 
 
Here is the backtrace : 
 
#0  0x00002aaaabb0ce67 in g_main_context_prepare () 
from /usr/lib/libglib-2.0.so.0 
#1  0x00002aaaabb0d858 in g_main_context_acquire () 
from /usr/lib/libglib-2.0.so.0 
#2  0x00002aaaabb0ddfa in g_main_loop_run () from /usr/lib/libglib-2.0.so.0 
#3  0x00002aaaab0412e1 in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0 
#4  0x000000000041df7e in run_wizards () 
#5  0x0000000000414206 in main () 
 
Strangely, the segfault appears to happens well after returning from the 
di_register_gnome (in desktop_integration.c) routine, although the problem only 
occurs when we ask for gnome integration.  
Comment 5 Bruno Roggeri 2005-11-30 06:37:28 UTC
Bug still present in gxine 0.5.1  
  
CFLAGS="-march=k8 -O2 -pipe -g", FEATURES="nostrip"  
  
  
trace after segfault :  
  
#0  0x00002aaaabb0ce67 in g_main_context_prepare ()  
   from /usr/lib/libglib-2.0.so.0  
#1  0x00002aaaabb0d858 in g_main_context_acquire ()  
   from /usr/lib/libglib-2.0.so.0  
#2  0x00002aaaabb0ddfa in g_main_loop_run () from /usr/lib/libglib-2.0.so.0  
#3  0x00002aaaab0416b1 in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0  
#4  0x0000000000432bae in run_wizards (requested=5758984) at wizards.c:368  
#5  0x0000000000419c41 in main (argc=1, argv=0x7fffffc158e8) at main.c:476  
  
I'll try to simplify the summary because I don't think there's much evidence 
that it's really related with a missing gnome compoment, as I have quite a lot 
of gnome's libs installed for various softwares, and the bug actually happens  
after the actual registration of the xine mime types to gnome (although it  
happens only if the registration is done.  
  
GDB newbie question : I've try to build glib with debug symbols so that I  
could see more precisely why is it segfaulting, but still they don't appear in  
GDB... is there anything special to do to get source code information of  
shared objects to be displayed ?  
Comment 6 Bruno Roggeri 2005-11-30 06:40:30 UTC
Summary modified (bug happens even most gnome's libs installed) 
Comment 7 Bruno Roggeri 2005-11-30 06:52:44 UTC
(In reply to comment #5) 
> GDB newbie question : I've try to build glib with debug symbols so that I   
> could see more precisely why is it segfaulting, but still they don't appear 
in   
> GDB... is there anything special to do to get source code information of   
> shared objects to be displayed ?   
 
Never mind, it works now. Don't know what I was doing wrong... 
Comment 8 Diego Elio Pettenò (RETIRED) gentoo-dev 2006-01-29 11:12:05 UTC
Does 0.5.3-r1 work? Can you try using splitdebug and -g -ggdb3 to get the exact point of segfaulting?
Comment 9 Bruno Roggeri 2006-01-29 12:53:34 UTC
(In reply to comment #8)
> Does 0.5.3-r1 work? Can you try using splitdebug and -g -ggdb3 to get the exact
> point of segfaulting?
> 

Erm, I couldn't find out how to use the splitted debug info, so I did a nostrip build (with -g -ggdb3). I would appreciate if you could point me to some help/info about splitdebug.

The crash still occurs :

(gdb) bt
#0  0x00002aaaabe43277 in g_main_context_prepare () from /usr/lib/libglib-2.0.so.0
#1  0x00002aaaabe43c68 in g_main_context_acquire () from /usr/lib/libglib-2.0.so.0
#2  0x00002aaaabe4420a in g_main_loop_run () from /usr/lib/libglib-2.0.so.0
#3  0x00002aaaab0505e1 in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0
#4  0x000000000043368e in run_wizards (requested=5731944) at wizards.c:372
#5  0x0000000000419e9c in main (argc=1, argv=0x7fffffcf0378) at main.c:488
(gdb)     

Would it help to have a debug build of gtk and glib also ? I tried it a while ago and I think the result were a bit different. If so, really please tell me how to use splitdebug :-).
Comment 10 Diego Elio Pettenò (RETIRED) gentoo-dev 2006-01-29 13:04:39 UTC
Yeah a debug build would help having gtk and glib built with debug info.

splitdebug is present in Portage 2.1, just need to set splitdebug in useflags, and -g -ggdb in C[XX]FLAGS, that would put the debug info in /usr/lib/debug instead of removing it or leaving it in the files.

I'm wondering what's causing this at this point, the crash is inside glib/gtk, which versions are you using?
Comment 11 Bruno Roggeri 2006-01-29 13:16:42 UTC
Ok, i'm still with stable portage, so no stripdebug for now...

I'm using also using stable gtk and glib, that is :
glib-2.8.5
gtk+-2.8.8

but I think that at the beginning of this bug, I was using the previous versions, whatever was stable at that point. Probably glib-2.6.5 and gtk+-2.6.10-r1.

Off to rebuilding gtk and glib then... i'll send a new bt by tomorrow.
Comment 12 Bruno Roggeri 2006-01-29 13:49:33 UTC
Well, it's already here :

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 46912545314368 (LWP 12037)]
IA__g_main_context_prepare (context=0x577660, priority=0x7fffffdc9ca4) at gmain.c:2248
2248    gmain.c: Aucun fichier ou r
Comment 13 Bruno Roggeri 2006-01-29 13:49:33 UTC
Well, it's already here :

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 46912545314368 (LWP 12037)]
IA__g_main_context_prepare (context=0x577660, priority=0x7fffffdc9ca4) at gmain.c:2248
2248    gmain.c: Aucun fichier ou répertoire de ce type.
        in gmain.c
(gdb) bt
#0  IA__g_main_context_prepare (context=0x577660, priority=0x7fffffdc9ca4)
    at gmain.c:2248
#1  0x00002aaaabe43c68 in g_main_context_iterate (context=0x577660, block=1,
    dispatch=1, self=0x20c49ba5e353f7cf) at gmain.c:2545
#2  0x00002aaaabe4420a in IA__g_main_loop_run (loop=0x1b6f2a0) at gmain.c:2769
#3  0x00002aaaab0505e1 in IA__gtk_main () at gtkmain.c:985
#4  0x000000000043368e in run_wizards (requested=5731944) at wizards.c:372
#5  0x0000000000419e9c in main (argc=1, argv=0x7fffffdca3d8) at main.c:488
Comment 14 Bruno Roggeri 2006-01-29 14:00:26 UTC
Bonus ( in case it helps ) :

(gdb) print *source->source_funcs
Cannot access memory at address 0x2aaab3efa2c0
Comment 15 Bruno Roggeri 2006-02-02 12:13:21 UTC
gxine-0.5.4
glib-2.8.5
gtk+-2.8.8

Same crash :

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 46912548792784 (LWP 20154)]
IA__g_main_context_prepare (context=0x577660, priority=0x7fffffc4fe94) at gmain.c:2248
2248    gmain.c: Aucun fichier ou r
Comment 16 Bruno Roggeri 2006-02-02 12:13:21 UTC
gxine-0.5.4
glib-2.8.5
gtk+-2.8.8

Same crash :

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 46912548792784 (LWP 20154)]
IA__g_main_context_prepare (context=0x577660, priority=0x7fffffc4fe94) at gmain.c:2248
2248    gmain.c: Aucun fichier ou répertoire de ce type.
        in gmain.c
(gdb) bt
#0  IA__g_main_context_prepare (context=0x577660, priority=0x7fffffc4fe94) at gmain.c:2248
#1  0x00002aaaab910c68 in g_main_context_iterate (context=0x577660, block=1, dispatch=1,
    self=0x20c49ba5e353f7cf) at gmain.c:2545
#2  0x00002aaaab91120a in IA__g_main_loop_run (loop=0x1ab9400) at gmain.c:2769
#3  0x00002aaaaaf3b5e1 in IA__gtk_main () at gtkmain.c:985
#4  0x0000000000433f5e in run_wizards (requested=5731944) at wizards.c:373
#5  0x000000000041a131 in main (argc=1, argv=0x7fffffc505c8) at main.c:498

And same cause :
(gdb) print *source->source_funcs
Cannot access memory at address 0x2aaab424c2c0

Funny that the adress of the failure should be reproductible.
Comment 17 Bruno Roggeri 2006-02-14 06:25:02 UTC
News, news !

It seems that compiling xine-lib with the gnome use flags fixes the problem. I was using -gnome until a couple of days ago. Maybe the problem is reproductible by emerging xine-lib without the gnome use flag.

It is to be taken with a grain of salt because in fact I just installed gnome and set the gtk and gnome use flags globally, so many things have changed on my system. Maybe I'll try to remerge xine-lib to check if it really is the problem.
Comment 18 Gilles Dartiguelongue (RETIRED) gentoo-dev 2008-10-12 20:32:23 UTC
wow, 2006 ! I take it that your bug is fixed by now. If not please reopen and provide updated informations, thanks.

Closing worksforme per comment #17.