diff options
author | Nathan Ridge | 2018-11-16 02:50:40 +0000 |
---|---|---|
committer | Nathan Ridge | 2018-11-24 07:09:32 +0000 |
commit | ac68d83566d924e8f144aaa7853a6c4bc09ec169 (patch) | |
tree | 55b287ae91304ce50d3b244fb9b6ffd090d2ba28 /core | |
parent | 0c7b32c0dd78c1a628adbc06f5be566b8312e0dc (diff) | |
download | org.eclipse.cdt-ac68d83566d924e8f144aaa7853a6c4bc09ec169.tar.gz org.eclipse.cdt-ac68d83566d924e8f144aaa7853a6c4bc09ec169.tar.xz org.eclipse.cdt-ac68d83566d924e8f144aaa7853a6c4bc09ec169.zip |
Bug 541117 - NPE in CElementHyperlinkDetector.isLanguageKeyword
Change-Id: I4bd2155de5aa7a09cb9e68f57e1168bdaab76401
Diffstat (limited to 'core')
-rw-r--r-- | core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/CElementHyperlinkDetector.java | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/CElementHyperlinkDetector.java b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/CElementHyperlinkDetector.java index 39ef1c90c90..89d896c1d40 100644 --- a/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/CElementHyperlinkDetector.java +++ b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/CElementHyperlinkDetector.java @@ -206,12 +206,14 @@ public class CElementHyperlinkDetector extends AbstractHyperlinkDetector { */ private static IRegion getIdentifier(IDocument document, int offset, ILanguage language) throws BadLocationException { - IRegion wordRegion = CWordFinder.findWord(document, offset); - if (wordRegion != null && wordRegion.getLength() > 0) { - String word = document.get(wordRegion.getOffset(), wordRegion.getLength()); - if (!Character.isDigit(word.charAt(0))) { - if (SemanticUtil.isAutoOrDecltype(word) || !isLanguageKeyword(language, word)) { - return wordRegion; + if (language != null) { + IRegion wordRegion = CWordFinder.findWord(document, offset); + if (wordRegion != null && wordRegion.getLength() > 0) { + String word = document.get(wordRegion.getOffset(), wordRegion.getLength()); + if (!Character.isDigit(word.charAt(0))) { + if (SemanticUtil.isAutoOrDecltype(word) || !isLanguageKeyword(language, word)) { + return wordRegion; + } } } } |