소스 검색

Fix to little exception in SQLiteProvider

Kenric Nugteren 8 달 전
부모
커밋
6d021c587a
1개의 변경된 파일5개의 추가작업 그리고 2개의 파일을 삭제
  1. 5 2
      inabox.database.sqlite/SQLiteProvider.cs

+ 5 - 2
inabox.database.sqlite/SQLiteProvider.cs

@@ -3294,8 +3294,11 @@ public class SQLiteProvider : IProvider
     {
         if(!_externalProperties.TryGetValue(T, out var properties))
         {
-            properties = DatabaseSchema.Properties(T).Where(x => x.HasAttribute<ExternalStorageAttribute>()).ToArray();
-            _externalProperties.Add(T, properties);
+            lock (_externalProperties)
+            {
+                properties = DatabaseSchema.Properties(T).Where(x => x.HasAttribute<ExternalStorageAttribute>()).ToArray();
+                _externalProperties.TryAdd(T, properties);
+            }
         }
         return properties;
     }