Bug 74646

Summary: segfault in pa_sink_input_new
Product: PulseAudio Reporter: Sebastian Keller <sebastian-keller>
Component: daemonAssignee: pulseaudio-bugs
Status: RESOLVED FIXED QA Contact: pulseaudio-bugs
Severity: normal    
Priority: medium CC: lennart
Version: unspecified   
Hardware: Other   
OS: All   
Whiteboard:
i915 platform: i915 features:
Attachments: backtrace
Fix for the segfault

Description Sebastian Keller 2014-02-07 03:03:08 UTC
Created attachment 93581 [details]
backtrace

In Fedora 21 using pulseaudio 4.99.3 I'm getting a segfault of the pulseaudio daemon whenever I try to play something using gnome-music.

I'm attaching a backtrace of the problem.
Comment 1 Tanu Kaskinen 2014-02-12 09:35:36 UTC
Thanks for the report! The crash is easy enough to fix, but it looks like format negotiation with the default sink fails. The only situation where this should happen is when the client requests passthrough playback for some compressed format. What kind of file are you trying to play?

If the file that you're trying to play is just a regular mp3/vorbis/flac file, then there's some other bug in addition to the one that causes the crash. If I write a special debugging patch, will you be able to test it (build and install pulseaudio from source code)?
Comment 2 Tanu Kaskinen 2014-02-12 10:47:46 UTC
A fix for the crash has been sent to the mailing list: http://thread.gmane.org/gmane.comp.audio.pulseaudio.general/19697
Comment 3 Tanu Kaskinen 2014-02-12 10:50:29 UTC
Created attachment 93928 [details] [review]
Fix for the segfault

Here's the patch as an attachment too.
Comment 4 Tanu Kaskinen 2014-02-14 14:10:52 UTC
The fix is now in master: http://cgit.freedesktop.org/pulseaudio/pulseaudio/commit/?id=ee1a96499447d0bc3458ab5075d05dbefcee225c

About the suspected additional bug: this was sorted out in IRC, and it turned out that GStreamer's playbin tries to play mp3 in passthrough mode before falling back to PCM, so nothing abnormal was happening in PulseAudio (apart from the crash).

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.