After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 337378 - Rhythmbox crashed while viewing file on playlist
Rhythmbox crashed while viewing file on playlist
Status: RESOLVED FIXED
Product: rhythmbox
Classification: Other
Component: general
0.9.3
Other Linux
: Normal normal
: ---
Assigned To: RhythmBox Maintainers
RhythmBox Maintainers
: 345087 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2006-04-05 14:27 UTC by Sebastien Bacher
Modified: 2006-07-29 09:22 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Sebastien Bacher 2006-04-05 14:27:07 UTC
That bug has been opened on https://launchpad.net/distros/ubuntu/+source/rhythmbox/+bug/38177

"Rhythmbox crashed good when I was adding a file from Media Library to custom playlist. After I selected newly added file from that playlist, rhythmbox went down.

I compiled a debug build and reproduced the bug using same steps,
but this time RB or or gdb froze X almost completely. I was able to move mouse pointer, but none of the desktop panels were responsive and ALT+TAB task switching wasn't responsive either.

I had to run gdm from /dev/tty1 using DISPLAY=:0.0 directive to get the backtrace out.

(Could be related to https://launchpad.net/distros/ubuntu/+source/rhythmbox/+bug/33872)

I'll attach backtrace log with debug symbols on.
...
GNU gdb 6.4-debian
Copyright 2005 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "i486-linux-gnu"...Using host libthread_db library "/lib/tls/i686/cmov/libthread_db.so.1".

(gdb) handle SIG33 pass nostop noprint
Signal        Stop	Print	Pass to program	Description
SIG33         No	No	Yes		Real-time event 33
(gdb) run
Starting program: /usr/bin/rhythmbox 
[Thread debugging using libthread_db enabled]
[New Thread -1226623296 (LWP 5968)]
Bonobo accessibility support initialized
GTK Accessibility Module initialized

(rhythmbox:5968): Rhythmbox-WARNING **: couldn't connect to session bus: Unable to determine the address of the message bus
[New Thread -1239139408 (LWP 5971)]
[New Thread -1247532112 (LWP 5972)]

(rhythmbox:5968): Rhythmbox-WARNING **: Unable to start mDNS browsing
[New Thread -1248109648 (LWP 5973)]
[New Thread -1256502352 (LWP 5974)]
[New Thread -1264895056 (LWP 5976)]
[Thread -1264895056 (LWP 5976) exited]
[Thread -1248109648 (LWP 5973) exited]
[Thread -1256502352 (LWP 5974) exited]
[New Thread -1248109648 (LWP 5978)]
[New Thread -1256502352 (LWP 5980)]
[New Thread -1264895056 (LWP 5981)]
[New Thread -1275069520 (LWP 5982)]
[New Thread -1283462224 (LWP 5983)]
[New Thread -1291854928 (LWP 5984)]
[New Thread -1300247632 (LWP 5985)]
[New Thread -1308640336 (LWP 5986)]
[New Thread -1317033040 (LWP 5987)]
[New Thread -1325425744 (LWP 5988)]
[New Thread -1333818448 (LWP 5989)]
[New Thread -1342211152 (LWP 5990)]
[New Thread -1350603856 (LWP 5991)]
[Thread -1248109648 (LWP 5978) exited]
[Thread -1256502352 (LWP 5980) exited]
[Thread -1264895056 (LWP 5981) exited]
[Thread -1275069520 (LWP 5982) exited]
[Thread -1283462224 (LWP 5983) exited]
[Thread -1291854928 (LWP 5984) exited]
[Thread -1300247632 (LWP 5985) exited]
[Thread -1308640336 (LWP 5986) exited]
[Thread -1317033040 (LWP 5987) exited]
[Thread -1325425744 (LWP 5988) exited]
[Thread -1333818448 (LWP 5989) exited]
[Thread -1342211152 (LWP 5990) exited]
[Thread -1350603856 (LWP 5991) exited]
[New Thread -1350603856 (LWP 5992)]
[Thread -1350603856 (LWP 5992) exited]

(rhythmbox:5968): GLib-GObject-WARNING **: invalid unclassed pointer in cast to `GObject'

(rhythmbox:5968): GLib-GObject-WARNING **: instance with invalid (NULL) class pointer

(rhythmbox:5968): GLib-GObject-CRITICAL **: g_signal_handlers_disconnect_matched: assertion `G_TYPE_CHECK_INSTANCE (instance)' failed

(rhythmbox:5968): GLib-GObject-WARNING **: invalid unclassed pointer in cast to `GObject'

(rhythmbox:5968): GLib-GObject-WARNING **: instance with invalid (NULL) class pointer

(rhythmbox:5968): GLib-GObject-CRITICAL **: g_signal_handlers_disconnect_matched: assertion `G_TYPE_CHECK_INSTANCE (instance)' failed

(rhythmbox:5968): GLib-GObject-WARNING **: invalid unclassed pointer in cast to `GObject'

(rhythmbox:5968): GLib-GObject-WARNING **: instance with invalid (NULL) class pointer

(rhythmbox:5968): GLib-GObject-CRITICAL **: g_signal_handlers_disconnect_matched: assertion `G_TYPE_CHECK_INSTANCE (instance)' failed

(rhythmbox:5968): GLib-GObject-WARNING **: invalid unclassed pointer in cast to `GObject'

(rhythmbox:5968): GLib-GObject-WARNING **: instance with invalid (NULL) class pointer

(rhythmbox:5968): GLib-GObject-CRITICAL **: g_signal_handlers_disconnect_matched: assertion `G_TYPE_CHECK_INSTANCE (instance)' failed

(rhythmbox:5968): GLib-GObject-WARNING **: invalid unclassed pointer in cast to `GObject'

(rhythmbox:5968): GLib-GObject-WARNING **: instance with invalid (NULL) class pointer

(rhythmbox:5968): GLib-GObject-CRITICAL **: g_signal_handlers_disconnect_matched: assertion `G_TYPE_CHECK_INSTANCE (instance)' failed

(rhythmbox:5968): GLib-GObject-WARNING **: invalid unclassed pointer in cast to `GObject'

(rhythmbox:5968): GLib-GObject-WARNING **: instance with invalid (NULL) class pointer

(rhythmbox:5968): GLib-GObject-CRITICAL **: g_signal_handlers_disconnect_matched: assertion `G_TYPE_CHECK_INSTANCE (instance)' failed
[New Thread -1350603856 (LWP 5993)]
[Thread -1350603856 (LWP 5993) exited]
[New Thread -1350603856 (LWP 5994)]
[Thread -1350603856 (LWP 5994) exited]
[New Thread -1350603856 (LWP 5995)]
[Thread -1350603856 (LWP 5995) exited]
[New Thread -1350603856 (LWP 5996)]
[Thread -1350603856 (LWP 5996) exited]
[New Thread -1350603856 (LWP 5997)]
[New Thread -1342211152 (LWP 5998)]
[New Thread -1333818448 (LWP 5999)]
[New Thread -1317033040 (LWP 6000)]
[New Thread -1251959888 (LWP 6001)]
[New Thread -1260352592 (LWP 6002)]
[Thread -1251959888 (LWP 6001) exited]
[Thread -1317033040 (LWP 6000) exited]
[New Thread -1317033040 (LWP 6003)]
[New Thread -1251959888 (LWP 6004)]
[Thread -1251959888 (LWP 6004) exited]
[Thread -1317033040 (LWP 6003) exited]

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread -1226623296 (LWP 5968)]
0x080b9b7c in rhythmdb_query_model_has_pending_changes (model=0x2)
    at rhythmdb-query-model.c:707
707		result = g_atomic_int_get (&model->priv->pending_update_count) > 0;
(gdb) thread apply all bt

Thread 1 (Thread -1226623296 (LWP 5968))

  • #0 rhythmdb_query_model_has_pending_changes
    at rhythmdb-query-model.c line 707
  • #1 rhythmdb_query_model_has_pending_changes
    at rhythmdb-query-model.c line 709
  • #2 rhythmdb_query_model_has_pending_changes
    at rhythmdb-query-model.c line 709
  • #3 rb_statusbar_sync_status
    at rb-statusbar.c line 408
  • #4 poll_status
    at rb-statusbar.c line 464
  • #5 g_main_context_is_owner
    from /usr/lib/libglib-2.0.so.0
  • #6 g_main_context_dispatch
    from /usr/lib/libglib-2.0.so.0
  • #7 g_main_context_check
    from /usr/lib/libglib-2.0.so.0
  • #8 g_main_loop_run
    from /usr/lib/libglib-2.0.so.0
  • #9 bonobo_main
    from /usr/lib/libbonobo-2.so.0
  • #10 main
    at main.c line 398
The program is running.  Exit anyway? (y or n) 
...
crash backtrace produced by gdb.

RB: Gnome rhythmbox 0.9.3.1
Package: rhythmbox_0.9.3.1-0ubuntu3_i386.deb
Gstreamer: gstreamer0.10-x (0.10.5-0ubuntu2)
Alsa-base: 1.0.10-4ubuntu3

Sorry,

I meant to say I had to run gdb from /dev/tty1, not gdm.."
Comment 1 Alex Lancaster 2006-04-05 22:06:22 UTC
Can you play the file from the library itself?   From the backtrace, it looks like a gstreamer issue.  Also please retest using CVS if possible.
Comment 2 Jonathan Matthew 2006-04-06 11:47:42 UTC
The gstreamer threads appear to be innocent in this case.

It looks like a query model's base model pointer has become corrupted - the chain appears to go 0x8a1a0e0 -> 0x8a0eb60 -> 0x2 .. 0x2 being obviously bad.  I'm guessing the model at 0x8a0eb60 was destroyed due to a reference counting problem, then overwritten with something else.

There was some fairly weird stuff going on when adding songs to static playlists until recently, so this may be related.
Comment 3 Matti Lindell 2006-04-06 17:20:00 UTC
I reported the original bug to Ubuntu malone.

The file plays fine if it's played straight from the Library.
Behaviour isn't consistent and bug can be reproduced 30% of the time, and this includes playing from static playlist.

I'll see if I manage to test with CVS build.
Comment 4 Elijah Newren 2006-06-16 17:24:07 UTC
*** Bug 345087 has been marked as a duplicate of this bug. ***
Comment 5 Andrew Conkling 2006-06-16 18:18:56 UTC
(In reply to comment #4)
> *** Bug 345087 has been marked as a duplicate of this bug. ***

This was my bug, and in my case, I wasn't even playing anything.  Rhythmbox was slow on startup, and never "came back" to be snappy.  When it crashed, I had still only been watching it load (and freeze) the library.
Comment 6 Sebastien Bacher 2006-07-29 09:22:35 UTC
Comment from the distribution bug submitter:

"This issue seems to be fixed with 0.9.5 version, at least for me."

closing it as fixed then