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 441927 - visualization screen crashing rb (Program received signal SIGPIPE, Broken pipe)
visualization screen crashing rb (Program received signal SIGPIPE, Broken pipe)
Status: RESOLVED FIXED
Product: rhythmbox
Classification: Other
Component: general
HEAD
Other All
: Normal critical
: ---
Assigned To: RhythmBox Maintainers
RhythmBox Maintainers
Depends on:
Blocks:
 
 
Reported: 2007-05-28 22:11 UTC by Matti Lindell
Modified: 2007-06-02 02:15 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
patch (2.64 KB, patch)
2007-06-01 00:43 UTC, Jonathan Matthew
none Details | Review
better patch (2.86 KB, patch)
2007-06-01 09:52 UTC, Jonathan Matthew
committed Details | Review

Description Matti Lindell 2007-05-28 22:11:08 UTC
Steps to reproduce:
Forwarded from https://bugs.launchpad.net/ubuntu/+source/rhythmbox/+bug/117259

"
Binary package hint: rhythmbox

Version: 0.10.90-0ubuntu1

Rhythmbox crashes when visualization screen (window mode) is closed.

Steps to reproduce:
 *Play a song and toggle the visualization view active
 *Hide the visualization view and enable it again (for some reason it appears in windowed mode this time, separate bug maybe?)
 *Close windowed visualization screen using "Close window - control" (X marks the spot)
"


Stack trace:

Program received signal SIGPIPE, Broken pipe.
  • #0 __kernel_vsyscall
  • #1 ??
    from /lib/tls/i686/cmov/libpthread.so.0
  • #2 _X11TransSocketWrite
    at /usr/include/X11/Xtrans/Xtranssock.c line 2171
  • #3 _X11TransWrite
    at /usr/include/X11/Xtrans/Xtrans.c line 900
  • #4 _XFlushInt
    at ../../src/XlibInt.c line 677
  • #5 _XReply
    at ../../src/XlibInt.c line 1710
  • #6 _XGetWindowAttributes
    at ../../src/GetWAttrs.c line 116
  • #7 XGetWindowAttributes
    at ../../src/GetWAttrs.c line 151
  • #8 ??
    from /usr/lib/gstreamer-0.10/libgstxvimagesink.so
  • #9 ??
  • #10 ??
  • #11 ??
  • #12 ??
  • #13 ??
  • #14 ??

Other information:
Original bugreport contains the full backtrace as well.
Comment 1 Matti Lindell 2007-05-28 22:13:14 UTC
Here's the full backtrace:

Thread 38 (Thread -1393108080 (LWP 1807))

  • #0 __nptl_death_event
    from /lib/tls/i686/cmov/libpthread.so.0
  • #1 start_thread
    from /lib/tls/i686/cmov/libpthread.so.0
  • #2 clone
    from /lib/tls/i686/cmov/libc.so.6

Thread 37 (Thread -1384715376 (LWP 1806))

  • #0 __nptl_death_event
    from /lib/tls/i686/cmov/libpthread.so.0
  • #1 start_thread
    from /lib/tls/i686/cmov/libpthread.so.0
  • #2 clone
    from /lib/tls/i686/cmov/libc.so.6

Thread 36 (Thread -1376322672 (LWP 1805))

  • #0 __nptl_death_event
    from /lib/tls/i686/cmov/libpthread.so.0
  • #1 start_thread
    from /lib/tls/i686/cmov/libpthread.so.0
  • #2 clone
    from /lib/tls/i686/cmov/libc.so.6

Thread 35 (Thread -1351144560 (LWP 1804))

  • #0 __nptl_death_event
    from /lib/tls/i686/cmov/libpthread.so.0
  • #1 start_thread
    from /lib/tls/i686/cmov/libpthread.so.0
  • #2 clone
    from /lib/tls/i686/cmov/libc.so.6

Thread 33 (Thread -1359537264 (LWP 1802))

  • #0 __nptl_death_event
    from /lib/tls/i686/cmov/libpthread.so.0
  • #1 start_thread
    from /lib/tls/i686/cmov/libpthread.so.0
  • #2 clone
    from /lib/tls/i686/cmov/libc.so.6

Thread 32 (Thread -1367929968 (LWP 1801))

  • #0 __nptl_death_event
    from /lib/tls/i686/cmov/libpthread.so.0
  • #1 start_thread
    from /lib/tls/i686/cmov/libpthread.so.0
  • #2 clone
    from /lib/tls/i686/cmov/libc.so.6

Comment 2 Matti Lindell 2007-05-28 22:16:53 UTC
Maybe related to http://bugzilla.gnome.org/show_bug.cgi?id=427452.
I'm using crossfading backend too.

Other info:
Ubuntu Feisty
X Window System Version 7.2.0
GStreamer 0.10.12
Comment 3 Jonathan Matthew 2007-05-31 12:00:27 UTC
That it appears in a separate window when re-enabled is actually the bug here.  The window is created by the GStreamer sink element, and we have no way of handling events on it, so when the window is closed, xlib kills the process.

The visualisation plugin's tee mode (which is used when the crossfading backend is in use) doesn't currently make any attempt at handling the sink's prepare-xwindow-id message.  The plugin needs to be notified by the player backend when the tee is added or removed from the playback pipeline (bug 425580) before we can fix this.
Comment 4 Jonathan Matthew 2007-06-01 00:43:17 UTC
Created attachment 89139 [details] [review]
patch

This requires the patch from bug 425580 to do anything useful
Comment 5 Jonathan Matthew 2007-06-01 09:52:16 UTC
Created attachment 89170 [details] [review]
better patch

it's probably a good idea to only connect to the tee signals once..
Comment 6 James "Doc" Livingston 2007-06-02 02:15:57 UTC
Committed to svn trunk.