diff --git a/MonoGame.Framework/Platform/Graphics/BufferResource.DirectX.cs b/MonoGame.Framework/Platform/Graphics/BufferResource.DirectX.cs index b6f578ef200..6fa7b87cc95 100644 --- a/MonoGame.Framework/Platform/Graphics/BufferResource.DirectX.cs +++ b/MonoGame.Framework/Platform/Graphics/BufferResource.DirectX.cs @@ -7,7 +7,7 @@ namespace Microsoft.Xna.Framework.Graphics { - public partial class BufferResource + public partial class BufferResource : ShaderResource { private SharpDX.Direct3D11.Buffer _buffer; private SharpDX.Direct3D11.Buffer _cachedStagingBuffer; @@ -95,6 +95,9 @@ private void PlatformConstruct() private void PlatformGraphicsDeviceResetting() { SharpDX.Utilities.Dispose(ref _buffer); + SharpDX.Utilities.Dispose(ref _resourceView); + SharpDX.Utilities.Dispose(ref _unorderedAccessView); + SharpDX.Utilities.Dispose(ref _cachedStagingBuffer); } void GenerateIfRequired() @@ -296,6 +299,8 @@ protected override void Dispose(bool disposing) if (disposing) { SharpDX.Utilities.Dispose(ref _buffer); + SharpDX.Utilities.Dispose(ref _resourceView); + SharpDX.Utilities.Dispose(ref _unorderedAccessView); SharpDX.Utilities.Dispose(ref _cachedStagingBuffer); }