diff --git a/Ryujinx.Horizon/Sdk/OsTypes/Impl/MultiWaitImpl.cs b/Ryujinx.Horizon/Sdk/OsTypes/Impl/MultiWaitImpl.cs index 71481e9df..fd45792d7 100644 --- a/Ryujinx.Horizon/Sdk/OsTypes/Impl/MultiWaitImpl.cs +++ b/Ryujinx.Horizon/Sdk/OsTypes/Impl/MultiWaitImpl.cs @@ -40,9 +40,9 @@ namespace Ryujinx.Horizon.Sdk.OsTypes.Impl public void MoveAllFrom(MultiWaitImpl other) { - foreach (MultiWaitHolderBase waitable in other._multiWaits) + foreach (MultiWaitHolderBase multiWait in other._multiWaits) { - waitable.SetMultiWait(this); + multiWait.SetMultiWait(this); } _multiWaits.AddRange(other._multiWaits); @@ -128,9 +128,12 @@ namespace Ryujinx.Horizon.Sdk.OsTypes.Impl } break; case WaitCancelled: - if (_signaledHolder != null) + lock (_lock) { - return _signaledHolder; + if (_signaledHolder != null) + { + return _signaledHolder; + } } break; default: diff --git a/Ryujinx.Horizon/Sdk/Sf/Hipc/ServerManagerBase.cs b/Ryujinx.Horizon/Sdk/Sf/Hipc/ServerManagerBase.cs index bf70aa501..68cae6bc4 100644 --- a/Ryujinx.Horizon/Sdk/Sf/Hipc/ServerManagerBase.cs +++ b/Ryujinx.Horizon/Sdk/Sf/Hipc/ServerManagerBase.cs @@ -15,7 +15,7 @@ namespace Ryujinx.Horizon.Sdk.Sf.Hipc private readonly MultiWait _multiWait; private readonly MultiWait _waitList; - private readonly object _waitableSelectionLock; + private readonly object _multiWaitSelectionLock; private readonly object _waitListLock; private readonly Event _requestStopEvent; @@ -38,7 +38,7 @@ namespace Ryujinx.Horizon.Sdk.Sf.Hipc _multiWait = new MultiWait(); _waitList = new MultiWait(); - _waitableSelectionLock = new object(); + _multiWaitSelectionLock = new object(); _waitListLock = new object(); _requestStopEvent = new Event(EventClearMode.ManualClear); @@ -136,7 +136,7 @@ namespace Ryujinx.Horizon.Sdk.Sf.Hipc private MultiWaitHolder WaitSignaled() { - lock (_waitableSelectionLock) + lock (_multiWaitSelectionLock) { while (true) {