From c0d216205bf5b358fb1513138d3d71ba11241024 Mon Sep 17 00:00:00 2001 From: peter Date: Mon, 21 Jul 2014 22:14:07 +0200 Subject: [PATCH] EA-58395 - NPE: PerlMatcher.matches --- .../src/com/intellij/ide/actions/SearchEverywhereAction.java | 5 +++-- .../com/intellij/ide/util/gotoByName/GotoActionModel.java | 2 +- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/platform/lang-impl/src/com/intellij/ide/actions/SearchEverywhereAction.java b/platform/lang-impl/src/com/intellij/ide/actions/SearchEverywhereAction.java index 5b82a62ae910..e1d5582204df 100644 --- a/platform/lang-impl/src/com/intellij/ide/actions/SearchEverywhereAction.java +++ b/platform/lang-impl/src/com/intellij/ide/actions/SearchEverywhereAction.java @@ -1796,8 +1796,9 @@ public class SearchEverywhereAction extends AnAction implements CustomComponentA GotoActionModel model = new GotoActionModel(project, myFocusComponent, myEditor, myFile) { @Override protected MatchMode actionMatches(String pattern, @NotNull AnAction anAction) { - return NameUtil.buildMatcher("*" + pattern, NameUtil.MatchingCaseSensitivity.NONE) - .matches(anAction.getTemplatePresentation().getText()) ? MatchMode.NAME : MatchMode.NONE; + String text = anAction.getTemplatePresentation().getText(); + return text != null && NameUtil.buildMatcher("*" + pattern, NameUtil.MatchingCaseSensitivity.NONE) + .matches(text) ? MatchMode.NAME : MatchMode.NONE; } }; return new GotoActionItemProvider(model); diff --git a/platform/lang-impl/src/com/intellij/ide/util/gotoByName/GotoActionModel.java b/platform/lang-impl/src/com/intellij/ide/util/gotoByName/GotoActionModel.java index 8a4ad83395cb..91f0d3368521 100644 --- a/platform/lang-impl/src/com/intellij/ide/util/gotoByName/GotoActionModel.java +++ b/platform/lang-impl/src/com/intellij/ide/util/gotoByName/GotoActionModel.java @@ -459,7 +459,7 @@ public class GotoActionModel implements ChooseByNameModel, CustomMatcherModel, C } final String groupName = myActionsMap.get(anAction); if (groupName == null) { - return matcher.matches(text, compiledPattern) ? MatchMode.NON_MENU : MatchMode.NONE; + return text != null && matcher.matches(text, compiledPattern) ? MatchMode.NON_MENU : MatchMode.NONE; } return text != null && matcher.matches(groupName + " " + text, compiledPattern) ? MatchMode.GROUP : MatchMode.NONE; }