mirror of
https://gitlab.freedesktop.org/pulseaudio/pulseaudio.git
synced 2025-11-07 13:30:03 -05:00
filter-apply: Ignore monitor source of filter in find_paired_master()
When module-filter-apply tries to find a matching source-output for a given sink-input and a stream within the same group exists on the monitor source of the filter, module-filter apply falsely assumes that the source belongs to another instance of the filter and tries to access source->output_from_master->source, which leads to a segmentation fault. This patch fixes the issue by ignoring the stream if the source is the monitor source of the filter.
This commit is contained in:
parent
dfb0460fb4
commit
838d95dab7
1 changed files with 6 additions and 0 deletions
|
|
@ -259,6 +259,12 @@ static bool find_paired_master(struct userdata *u, struct filter *filter, pa_obj
|
|||
|
||||
if (pa_streq(g, group)) {
|
||||
if (pa_streq(module_name, so->source->module->name)) {
|
||||
/* Make sure we are not routing to the monitor source
|
||||
* of the same filter */
|
||||
if (so->source->monitor_of) {
|
||||
pa_xfree(g);
|
||||
continue;
|
||||
}
|
||||
/* Make sure we're not routing to another instance of
|
||||
* the same filter. */
|
||||
filter->source_master = so->source->output_from_master->source;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue