mirror of
https://gitlab.freedesktop.org/pulseaudio/pulseaudio.git
synced 2025-11-06 13:29:56 -05:00
module-allow-passthrough: Don't crash if we can't find a sink
module-allow-passthrough has a (necessary) hack to replicate the default sink selection and format negotiation from sink-input.c. One thing that got missed in this replication is the possibility that the sink input is not compatible with the default sink. When this happen, we now exit gracefully.
This commit is contained in:
parent
66e8ec3453
commit
f9f9877d18
1 changed files with 6 additions and 0 deletions
|
|
@ -184,6 +184,12 @@ static pa_hook_result_t sink_input_new_cb(pa_core *core, pa_sink_input_new_data
|
|||
if (!new_data->format && new_data->nego_formats && !pa_idxset_isempty(new_data->nego_formats))
|
||||
new_data->format = pa_format_info_copy(pa_idxset_first(new_data->nego_formats, NULL));
|
||||
|
||||
if (!new_data->format) {
|
||||
/* Sink doesn't support any requested format */
|
||||
pa_log_debug("Default sink does not match sink input requested formats");
|
||||
return PA_HOOK_OK;
|
||||
}
|
||||
|
||||
if (pa_sink_input_new_data_is_passthrough(new_data))
|
||||
return new_passthrough_stream(u, core, new_data->sink, NULL);
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue