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 724619 - crash when reading the device name property of pulsesink
crash when reading the device name property of pulsesink
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-good
1.x
Other Linux
: Normal major
: 1.2.4
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2014-02-18 10:03 UTC by Stefan Sauer (gstreamer, gtkdoc dev)
Modified: 2014-02-18 10:46 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Stefan Sauer (gstreamer, gtkdoc dev) 2014-02-18 10:03:17 UTC
GST_DEBUG_DUMP_DOT_DIR=. gdb --args /usr/bin/gst-launch-1.0 audiotestsrc ! pulsesink

Assertion 'pthread_mutex_unlock(&m->mutex) == 0' failed at pulsecore/mutex-posix.c:108, function pa_mutex_unlock(). Aborting.

Program received signal SIGABRT, Aborted.
0x00007ffff6feb425 in __GI_raise (sig=<optimized out>) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
64	../nptl/sysdeps/unix/sysv/linux/raise.c: No such file or directory.
(gdb) bt
  • #0 __GI_raise
    at ../nptl/sysdeps/unix/sysv/linux/raise.c line 64
  • #1 __GI_abort
    at abort.c line 91
  • #2 pa_mutex_unlock
    at pulsecore/mutex-posix.c line 108
  • #3 gst_pulsesink_get_current_device
    at pulsesink.c line 2778
  • #4 gst_pulsesink_get_property
    at pulsesink.c line 2980
  • #5 g_object_get_property
    from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
  • #6 debug_dump_get_element_params
    at gstdebugutils.c line 118
  • #7 debug_dump_element
    at gstdebugutils.c line 491
  • #8 gst_debug_bin_to_dot_file
    at gstdebugutils.c line 656
  • #9 gst_debug_bin_to_dot_file_with_ts
    at gstdebugutils.c line 702
  • #10 bus_sync_handler
    at gst-launch.c line 860
  • #11 bus_sync_handler
    at gst-launch.c line 840
  • #12 gst_bus_post
    at gstbus.c line 326
  • #13 gst_element_post_message_default
    at gstelement.c line 1693
  • #14 gst_element_post_message
    at gstelement.c line 1736
  • #15 gst_element_continue_state
    at gstelement.c line 2314
  • #16 gst_element_change_state
    at gstelement.c line 2648
  • #17 gst_element_set_state_func
    at gstelement.c line 2567
  • #18 main
    at gst-launch.c line 1036

Comment 1 Stefan Sauer (gstreamer, gtkdoc dev) 2014-02-18 10:19:16 UTC
This is in NULL->READY.
Comment 2 Stefan Sauer (gstreamer, gtkdoc dev) 2014-02-18 10:30:26 UTC
commit 3abad7af66f7eab2caeb3bf2a129721e375e29d0
Author: Stefan Sauer <ensonic@users.sf.net>
Date:   Tue Feb 18 11:28:18 2014 +0100

    pulsesink: fix crash when getting the current-device in NULL->READY
    
    The "goto unlock" is wrong as in this code path we haven't take the lock yet.
    Fixes #724619