[pulseaudio-discuss] [PATCH 0/7] Fix for an echo-cancel related crash
Tanu Kaskinen
tanuk at iki.fi
Tue Mar 22 13:41:23 UTC 2016
This is my second attempt at fixing bug 93443[1]. The first attempt[2]
had a nasty side effect of killing streams connected to any filter
sink while the filter sink was removed. This second attempt is an
entirely different approach.
The first patch is the "main" fix, but I think the second patch must
be applied together with it, because after implementing the first fix,
the result was that module-device-manager went into some infinite
stream moving loop that was only stopped by a crash in
module-echo-cancel (that crash is a separate issue, which I'll try to
fix next).
When trying to reproduce the use case of bug 93443, I found that
module-device-manager can easily break the filtering set up by
module-filter-apply. The third patch fixes that.
The last four patches refactor stream proplist updating. The third
patch has code that sets a property, and getting the property update
logging just the way I want was frustrating, so I changed the core
property updating code to take care of the logging.
[1] https://bugs.freedesktop.org/show_bug.cgi?id=93443
[2] http://thread.gmane.org/gmane.comp.audio.pulseaudio.general/24735
Tanu Kaskinen (7):
echo-cancel: rework move handling
don't move streams to devices that are going away
device-manager, filter-apply: don't reroute streams that have a filter
sink-input, source-output: rework property setting
sink-input, source-output: remove set_name()
loopback: refactor proplist updating
filter-apply: simplify proplist updating
src/modules/echo-cancel/module-echo-cancel.c | 28 ++----
src/modules/module-device-manager.c | 14 +++
src/modules/module-filter-apply.c | 11 +-
src/modules/module-loopback.c | 28 +++---
src/pulsecore/protocol-native.c | 4 +-
src/pulsecore/sink-input.c | 145 +++++++++++++++++++++------
src/pulsecore/sink-input.h | 4 +-
src/pulsecore/sink.c | 7 +-
src/pulsecore/sink.h | 6 ++
src/pulsecore/source-output.c | 145 +++++++++++++++++++++------
src/pulsecore/source-output.h | 4 +-
src/pulsecore/source.c | 5 +
src/pulsecore/source.h | 6 ++
13 files changed, 304 insertions(+), 103 deletions(-)
--
2.7.0
More information about the pulseaudio-discuss
mailing list