InputStreams should be disposed when destroyed

This commit is contained in:
RogueException
2017-04-01 13:21:08 -03:00
parent d243587a97
commit d991834c50

View File

@@ -183,15 +183,18 @@ namespace Discord.Audio
}
internal async Task RemoveInputStreamAsync(ulong userId)
{
if (_streams.TryRemove(userId, out var ignored))
if (_streams.TryRemove(userId, out var pair))
{
await _streamDestroyedEvent.InvokeAsync(userId).ConfigureAwait(false);
pair.Reader.Dispose();
}
}
internal async Task ClearInputStreamsAsync()
{
foreach (var pair in _streams)
{
pair.Value.Reader.Dispose();
await _streamDestroyedEvent.InvokeAsync(pair.Key).ConfigureAwait(false);
pair.Value.Reader.Dispose();
}
_ssrcMap.Clear();
_streams.Clear();