From ed57ae9e444ecd6f2c9457229c85d767ea391c7c Mon Sep 17 00:00:00 2001 From: Alain Magloire Date: Tue, 14 Dec 2004 22:29:22 +0000 Subject: [PATCH] Fix for PR 81007 --- .../ui/text/makefile/MakefileTextHover.java | 46 ++++++++++--------- 1 file changed, 24 insertions(+), 22 deletions(-) diff --git a/build/org.eclipse.cdt.make.ui/src/org/eclipse/cdt/make/internal/ui/text/makefile/MakefileTextHover.java b/build/org.eclipse.cdt.make.ui/src/org/eclipse/cdt/make/internal/ui/text/makefile/MakefileTextHover.java index b1c61a40e1e..babfd03cd9a 100644 --- a/build/org.eclipse.cdt.make.ui/src/org/eclipse/cdt/make/internal/ui/text/makefile/MakefileTextHover.java +++ b/build/org.eclipse.cdt.make.ui/src/org/eclipse/cdt/make/internal/ui/text/makefile/MakefileTextHover.java @@ -54,31 +54,33 @@ public class MakefileTextHover implements ITextHover { if (fEditor != null && len > -1) { IWorkingCopyManager fManager = MakeUIPlugin.getDefault().getWorkingCopyManager(); IMakefile makefile = fManager.getWorkingCopy(fEditor.getEditorInput()); - WordPartDetector wordPart = new WordPartDetector(textViewer, offset); - String name = wordPart.toString(); - IMacroDefinition[] statements = null; - if (WordPartDetector.inMacro(textViewer, offset)) { - statements = makefile.getMacroDefinitions(name); - if (statements == null || statements.length == 0) { - statements = makefile.getBuiltinMacroDefinitions(name); + if (makefile != null) { + WordPartDetector wordPart = new WordPartDetector(textViewer, offset); + String name = wordPart.toString(); + IMacroDefinition[] statements = null; + if (WordPartDetector.inMacro(textViewer, offset)) { + statements = makefile.getMacroDefinitions(name); + if (statements == null || statements.length == 0) { + statements = makefile.getBuiltinMacroDefinitions(name); + } } - } - - if (statements == null) { - statements = new IMacroDefinition[0]; - } - // iterate over all the different categories - StringBuffer buffer = new StringBuffer(); - for (int i = 0; i < statements.length; i++) { - if (i > 0) { - buffer.append("\n"); //$NON-NLS-1$ + + if (statements == null) { + statements = new IMacroDefinition[0]; } - String infoString = statements[i].getValue().toString(); - buffer.append(name); - buffer.append(" - "); //$NON-NLS-1$ - buffer.append(infoString); + // iterate over all the different categories + StringBuffer buffer = new StringBuffer(); + for (int i = 0; i < statements.length; i++) { + if (i > 0) { + buffer.append("\n"); //$NON-NLS-1$ + } + String infoString = statements[i].getValue().toString(); + buffer.append(name); + buffer.append(" - "); //$NON-NLS-1$ + buffer.append(infoString); + } + return buffer.toString(); } - return buffer.toString(); } } catch (BadLocationException e) { }