Fix NRE when MemoryUnmappedHandler is called for a destroyed channel (#4285)

This commit is contained in:
gdkchan 2023-01-14 00:16:06 -03:00 committed by Matt Heins
parent d363f34912
commit ff06957b2f

View file

@ -73,7 +73,7 @@ namespace Ryujinx.Graphics.Gpu
// Since the memory manager changed, make sure we will get pools from addresses of the new memory manager.
TextureManager.ReloadPools();
MemoryManager.Physical.BufferCache.QueuePrune();
memoryManager.Physical.BufferCache.QueuePrune();
}
/// <summary>
@ -84,7 +84,9 @@ namespace Ryujinx.Graphics.Gpu
private void MemoryUnmappedHandler(object sender, UnmapEventArgs e)
{
TextureManager.ReloadPools();
MemoryManager.Physical.BufferCache.QueuePrune();
var memoryManager = Volatile.Read(ref _memoryManager);
memoryManager?.Physical.BufferCache.QueuePrune();
}
/// <summary>