diff --git a/jps/model-impl/src/com/intellij/openapi/fileTypes/impl/FileTypeAssocTable.java b/jps/model-impl/src/com/intellij/openapi/fileTypes/impl/FileTypeAssocTable.java index 3dad90d211ac..43729428cc10 100644 --- a/jps/model-impl/src/com/intellij/openapi/fileTypes/impl/FileTypeAssocTable.java +++ b/jps/model-impl/src/com/intellij/openapi/fileTypes/impl/FileTypeAssocTable.java @@ -39,17 +39,23 @@ public class FileTypeAssocTable { private final Map myExactFileNameAnyCaseMappings; private final List> myMatchingMappings; - private FileTypeAssocTable(@NotNull Map extensionMappings, @NotNull Map exactFileNameMappings, @NotNull Map exactFileNameAnyCaseMappings, List> matchingMappings) { - myExtensionMappings = new THashMap(extensionMappings, CharSequenceHashingStrategy.CASE_INSENSITIVE); - - myExactFileNameMappings = new THashMap(exactFileNameMappings, CharSequenceHashingStrategy.CASE_SENSITIVE); - myExactFileNameAnyCaseMappings = new THashMap(exactFileNameAnyCaseMappings, CharSequenceHashingStrategy.CASE_INSENSITIVE); + private FileTypeAssocTable(@NotNull Map extensionMappings, + @NotNull Map exactFileNameMappings, + @NotNull Map exactFileNameAnyCaseMappings, + @NotNull List> matchingMappings) { + myExtensionMappings = new THashMap(Math.max(10, extensionMappings.size()), 0.5f, CharSequenceHashingStrategy.CASE_INSENSITIVE); + myExtensionMappings.putAll(extensionMappings); + myExactFileNameMappings = new THashMap(Math.max(10, exactFileNameMappings.size()), 0.5f, CharSequenceHashingStrategy.CASE_SENSITIVE); + myExactFileNameMappings.putAll(exactFileNameMappings); + myExactFileNameAnyCaseMappings = new THashMap(Math.max(10, exactFileNameAnyCaseMappings.size()), 0.5f, CharSequenceHashingStrategy.CASE_INSENSITIVE); + myExactFileNameAnyCaseMappings.putAll(exactFileNameAnyCaseMappings); myMatchingMappings = new ArrayList>(matchingMappings); } public FileTypeAssocTable() { - this(Collections.emptyMap(), Collections.emptyMap(), Collections.emptyMap(), Collections.>emptyList()); + this(Collections.emptyMap(), Collections.emptyMap(), Collections.emptyMap(), + Collections.>emptyList()); } public boolean isAssociatedWith(@NotNull T type, @NotNull FileNameMatcher matcher) {