diff options
-rw-r--r-- | src/pulsecore/sink.c | 2 | ||||
-rw-r--r-- | src/pulsecore/source.c | 2 |
2 files changed, 4 insertions, 0 deletions
diff --git a/src/pulsecore/sink.c b/src/pulsecore/sink.c index dafd1ccbf..f29a9b7c8 100644 --- a/src/pulsecore/sink.c +++ b/src/pulsecore/sink.c @@ -727,6 +727,8 @@ static void sink_free(pa_object *o) { pa_log_info("Freeing sink %u \"%s\"", s->index, s->name); + pa_sink_volume_change_flush(s); + if (s->monitor_source) { pa_source_unref(s->monitor_source); s->monitor_source = NULL; diff --git a/src/pulsecore/source.c b/src/pulsecore/source.c index eb2762197..97f6cd9b0 100644 --- a/src/pulsecore/source.c +++ b/src/pulsecore/source.c @@ -662,6 +662,8 @@ static void source_free(pa_object *o) { pa_log_info("Freeing source %u \"%s\"", s->index, s->name); + pa_source_volume_change_flush(s); + pa_idxset_free(s->outputs, NULL); pa_hashmap_free(s->thread_info.outputs); |