Browse Source

Fix audio dispose

pull/1667/head
Paulo 4 years ago
parent
commit
41715457c0
4 changed files with 23 additions and 4 deletions
  1. +3
    -0
      src/Discord.Net.WebSocket/Audio/Streams/BufferedWriteStream.cs
  2. +5
    -3
      src/Discord.Net.WebSocket/Audio/Streams/OpusEncodeStream.cs
  3. +8
    -1
      src/Discord.Net.WebSocket/Audio/Streams/RTPWriteStream.cs
  4. +7
    -0
      src/Discord.Net.WebSocket/Audio/Streams/SodiumEncryptStream.cs

+ 3
- 0
src/Discord.Net.WebSocket/Audio/Streams/BufferedWriteStream.cs View File

@@ -61,14 +61,17 @@ namespace Discord.Audio.Streams

_task = Run();
}

protected override void Dispose(bool disposing)
{
if (disposing)
{
_disposeTokenSource?.Cancel();
_disposeTokenSource?.Dispose();
_cancelTokenSource?.Cancel();
_cancelTokenSource?.Dispose();
_queueLock?.Dispose();
_next.Dispose();
}
base.Dispose(disposing);
}


+ 5
- 3
src/Discord.Net.WebSocket/Audio/Streams/OpusEncodeStream.cs View File

@@ -1,4 +1,4 @@
using System;
using System;
using System.Threading;
using System.Threading.Tasks;

@@ -89,10 +89,12 @@ namespace Discord.Audio.Streams

protected override void Dispose(bool disposing)
{
base.Dispose(disposing);

if (disposing)
{
_encoder.Dispose();
_next.Dispose();
}
base.Dispose(disposing);
}
}
}

+ 8
- 1
src/Discord.Net.WebSocket/Audio/Streams/RTPWriteStream.cs View File

@@ -1,4 +1,4 @@
using System;
using System;
using System.Threading;
using System.Threading.Tasks;

@@ -69,5 +69,12 @@ namespace Discord.Audio.Streams
{
await _next.ClearAsync(cancelToken).ConfigureAwait(false);
}

protected override void Dispose(bool disposing)
{
if (disposing)
_next.Dispose();
base.Dispose(disposing);
}
}
}

+ 7
- 0
src/Discord.Net.WebSocket/Audio/Streams/SodiumEncryptStream.cs View File

@@ -60,5 +60,12 @@ namespace Discord.Audio.Streams
{
await _next.ClearAsync(cancelToken).ConfigureAwait(false);
}

protected override void Dispose(bool disposing)
{
if (disposing)
_next.Dispose();
base.Dispose(disposing);
}
}
}

Loading…
Cancel
Save