From 0a5adc95c46b7140e004fdd993181237f99c51d5 Mon Sep 17 00:00:00 2001 From: Tanu Kaskinen Date: Mon, 3 Mar 2014 16:21:21 +0200 Subject: suspend-on-idle: Fix monitor source handling Fixes a crash that happened due to calling pa_source_check_suspend() when d->source was NULL. --- src/modules/module-suspend-on-idle.c | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/modules/module-suspend-on-idle.c b/src/modules/module-suspend-on-idle.c index 959de4324..15cbf95f0 100644 --- a/src/modules/module-suspend-on-idle.c +++ b/src/modules/module-suspend-on-idle.c @@ -167,8 +167,15 @@ static pa_hook_result_t source_output_fixate_hook_cb(pa_core *c, pa_source_outpu if (d) { resume(d); - if (pa_source_check_suspend(d->source) <= 0) - restart(d); + if (d->source) { + if (pa_source_check_suspend(d->source) <= 0) + restart(d); + } else { + /* The source output is connected to a monitor source. */ + pa_assert(d->sink); + if (pa_sink_check_suspend(d->sink) <= 0) + restart(d); + } } return PA_HOOK_OK; -- cgit v1.2.3