From 5714a50b5bc9d81df6963f9fd2a81a66220b455a Mon Sep 17 00:00:00 2001 From: RogueException Date: Thu, 3 Aug 2017 15:37:19 -0300 Subject: [PATCH] Lets try this again --- src/Discord.Net.WebSocket/Audio/AudioClient.cs | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/Discord.Net.WebSocket/Audio/AudioClient.cs b/src/Discord.Net.WebSocket/Audio/AudioClient.cs index 911df97ef..1ed5c3851 100644 --- a/src/Discord.Net.WebSocket/Audio/AudioClient.cs +++ b/src/Discord.Net.WebSocket/Audio/AudioClient.cs @@ -103,7 +103,7 @@ namespace Discord.Audio { StopAsync().GetAwaiter().GetResult(); ApiClient.Dispose(); - if (_secretKeyHandle.Target != null) + if (_secretKeyHandle.IsAllocated) _secretKeyHandle.Free(); _isDisposed = true; } @@ -260,10 +260,10 @@ namespace Discord.Audio if (data.Mode != DiscordVoiceAPIClient.Mode) throw new InvalidOperationException($"Discord selected an unexpected mode: {data.Mode}"); - if (_secretKeyHandle.Target != null) - _secretKeyHandle.Free(); _secretKey = data.SecretKey; - _secretKeyHandle = GCHandle.Alloc(data.SecretKey, GCHandleType.Pinned); + if (_secretKeyHandle.IsAllocated) + _secretKeyHandle.Free(); + _secretKeyHandle = GCHandle.Alloc(_secretKey, GCHandleType.Pinned); SecretKeyPtr = _secretKeyHandle.AddrOfPinnedObject(); _isSpeaking = false;