2
0
Эх сурвалжийг харах

Update Enumerator version when removing key

disarray2077 4 жил өмнө
parent
commit
ce894beaa9

+ 9 - 0
BeefLibs/corlib/src/Collections/Dictionary.bf

@@ -868,6 +868,9 @@ namespace System.Collections
 			{
 				int_cosize curIdx = mIndex - 1;
 				mDictionary.Remove(mDictionary.mEntries[curIdx].mKey);
+#if VERSION_DICTIONARY
+				mVersion = mDictionary.mVersion;
+#endif
 				mIndex = curIdx;
 			}
 
@@ -1016,6 +1019,9 @@ namespace System.Collections
 			{
 				int_cosize curIdx = mIndex - 1;
 				mDictionary.Remove(mDictionary.mEntries[curIdx].mKey);
+#if VERSION_DICTIONARY
+				mVersion = mDictionary.mVersion;
+#endif
 				mIndex = curIdx;
 			}
 
@@ -1119,6 +1125,9 @@ namespace System.Collections
 			{
 				int_cosize curIdx = mIndex - 1;
 				mDictionary.Remove(mDictionary.mEntries[curIdx].mKey);
+#if VERSION_DICTIONARY
+				mVersion = mDictionary.mVersion;
+#endif
 				mIndex = curIdx;
 			}