From 0cec4cbee5bbd7b86679eb3c0bb1dcf8ccfb2938 Mon Sep 17 00:00:00 2001 From: gdkchan Date: Tue, 7 Aug 2018 23:32:24 -0300 Subject: [PATCH] Fix race condition on IdDictionary (#333) --- Ryujinx.HLE/OsHle/IdDictionary.cs | 14 -------------- 1 file changed, 14 deletions(-) diff --git a/Ryujinx.HLE/OsHle/IdDictionary.cs b/Ryujinx.HLE/OsHle/IdDictionary.cs index 7a93f634..dcb8d0f7 100644 --- a/Ryujinx.HLE/OsHle/IdDictionary.cs +++ b/Ryujinx.HLE/OsHle/IdDictionary.cs @@ -8,8 +8,6 @@ namespace Ryujinx.HLE.OsHle { private ConcurrentDictionary Objs; - private int FreeIdHint = 1; - public IdDictionary() { Objs = new ConcurrentDictionary(); @@ -21,16 +19,6 @@ namespace Ryujinx.HLE.OsHle } public int Add(object Data) - { - if (Objs.TryAdd(FreeIdHint, Data)) - { - return FreeIdHint++; - } - - return AddSlow(Data); - } - - private int AddSlow(object Data) { for (int Id = 1; Id < int.MaxValue; Id++) { @@ -67,8 +55,6 @@ namespace Ryujinx.HLE.OsHle { if (Objs.TryRemove(Id, out object Obj)) { - FreeIdHint = Id; - return Obj; }