This repository was archived by the owner on Dec 24, 2022. It is now read-only.
File tree Expand file tree Collapse file tree 1 file changed +10
-12
lines changed Expand file tree Collapse file tree 1 file changed +10
-12
lines changed Original file line number Diff line number Diff line change @@ -96,24 +96,22 @@ public FieldDefinition[] AllFieldDefinitionsArray
9696 private readonly object fieldDefLock = new object ( ) ;
9797 private Dictionary < string , FieldDefinition > fieldDefinitionMap ;
9898 private Func < string , string > fieldNameSanitizer ;
99+
99100 public Dictionary < string , FieldDefinition > GetFieldDefinitionMap ( Func < string , string > sanitizeFieldName )
100101 {
101- if ( fieldDefinitionMap == null || fieldNameSanitizer != sanitizeFieldName )
102+ lock ( fieldDefLock )
102103 {
103- lock ( fieldDefLock )
104+ if ( fieldDefinitionMap != null && fieldNameSanitizer == sanitizeFieldName )
105+ return fieldDefinitionMap ;
106+
107+ fieldDefinitionMap = new Dictionary < string , FieldDefinition > ( StringComparer . OrdinalIgnoreCase ) ;
108+ fieldNameSanitizer = sanitizeFieldName ;
109+ foreach ( var fieldDef in FieldDefinitionsArray )
104110 {
105- if ( fieldDefinitionMap == null || fieldNameSanitizer != sanitizeFieldName )
106- {
107- fieldDefinitionMap = new Dictionary < string , FieldDefinition > ( StringComparer . OrdinalIgnoreCase ) ;
108- fieldNameSanitizer = sanitizeFieldName ;
109- foreach ( var fieldDef in FieldDefinitionsArray )
110- {
111- fieldDefinitionMap [ sanitizeFieldName ( fieldDef . FieldName ) ] = fieldDef ;
112- }
113- }
111+ fieldDefinitionMap [ sanitizeFieldName ( fieldDef . FieldName ) ] = fieldDef ;
114112 }
113+ return fieldDefinitionMap ;
115114 }
116- return fieldDefinitionMap ;
117115 }
118116
119117 public List < CompositeIndexAttribute > CompositeIndexes { get ; set ; }
You can’t perform that action at this time.
0 commit comments