On Mon, 2012-10-01 at 17:06 +0200, David Henningsson wrote: > If there is no silence memblock and no data, pa_memblockq_peek can > return NULL. In this case, do not crash on an assertion in > pa_memblock_acquire, but instead return a proper error to the client.
If there is no data in the buffer, pa_stream_peek() is supposed to return NULL according to the documentation. And it does that: if there's no data, pa_memblock_peek() will return a negative value, causing pa_stream_peek() to return NULL. The problem is the case where the buffer does contain data, but not at the read index. That is, there is a hole in the buffer. The client documentation doesn't have any warnings about holes, so the only safe way to handle holes is to return silence. Fixing this should be a simple matter of giving a silence memchunk when creating record_memblockq. -- Tanu -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1058200 Title: [sound]: gnome-control-center crashed with SIGABRT in pa_memblock_acquire() To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/pulseaudio/+bug/1058200/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs