From 2b763f64f6ae84f02ca303021487b02ebf862d6c Mon Sep 17 00:00:00 2001 From: Rustam Vishnyakov Date: Wed, 10 May 2017 15:48:31 +0300 Subject: [PATCH] Fixed EA-100532 (java.lang.AssertionError: Font null not found) --- .../intellij/openapi/editor/colors/EditorFontCache.java | 3 ++- .../openapi/editor/colors/impl/EditorFontCacheImpl.java | 8 +++++--- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/platform/editor-ui-api/src/com/intellij/openapi/editor/colors/EditorFontCache.java b/platform/editor-ui-api/src/com/intellij/openapi/editor/colors/EditorFontCache.java index aafda796987e..82711b2211a5 100644 --- a/platform/editor-ui-api/src/com/intellij/openapi/editor/colors/EditorFontCache.java +++ b/platform/editor-ui-api/src/com/intellij/openapi/editor/colors/EditorFontCache.java @@ -17,6 +17,7 @@ package com.intellij.openapi.editor.colors; import com.intellij.openapi.components.ServiceManager; import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; import java.awt.*; @@ -27,6 +28,6 @@ public abstract class EditorFontCache { } @NotNull - public abstract Font getFont(EditorFontType key); + public abstract Font getFont(@Nullable EditorFontType key); public abstract void reset(); } diff --git a/platform/editor-ui-ex/src/com/intellij/openapi/editor/colors/impl/EditorFontCacheImpl.java b/platform/editor-ui-ex/src/com/intellij/openapi/editor/colors/impl/EditorFontCacheImpl.java index f285578b0b35..844e0e87acbd 100644 --- a/platform/editor-ui-ex/src/com/intellij/openapi/editor/colors/impl/EditorFontCacheImpl.java +++ b/platform/editor-ui-ex/src/com/intellij/openapi/editor/colors/impl/EditorFontCacheImpl.java @@ -17,6 +17,7 @@ package com.intellij.openapi.editor.colors.impl; import com.intellij.ide.ui.UISettings; import com.intellij.openapi.editor.colors.*; +import com.intellij.util.ObjectUtils; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -29,13 +30,14 @@ public class EditorFontCacheImpl extends EditorFontCache { @Override @NotNull - public Font getFont(EditorFontType key) { + public Font getFont(@Nullable EditorFontType key) { synchronized (myFonts) { if (myFonts.isEmpty()) { initFonts(); } - final Font font = myFonts.get(key); - assert font != null : "Font " + key + " not found."; + EditorFontType fontType = ObjectUtils.notNull(key, EditorFontType.PLAIN); + final Font font = myFonts.get(fontType); + assert font != null : "Font " + fontType + " not found."; UISettings uiSettings = UISettings.getInstance(); if (uiSettings.getPresentationMode()) { return new Font(font.getName(), font.getStyle(), uiSettings.getPresentationModeFontSize());