From 6b74be4cac7d973aeaa7c02899876bf3848fe127 Mon Sep 17 00:00:00 2001 From: Anton Leherbauer Date: Wed, 7 Feb 2007 11:14:22 +0000 Subject: [PATCH] Avoid NPE during content assist with null indexer --- .../dom/parser/cpp/CPPASTFieldReference.java | 22 +++++++++++-------- 1 file changed, 13 insertions(+), 9 deletions(-) diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTFieldReference.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTFieldReference.java index c0e624f1ad6..dfcdc77455a 100644 --- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTFieldReference.java +++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTFieldReference.java @@ -127,10 +127,12 @@ public class CPPASTFieldReference extends CPPASTNode implements try { IField[] fields = classType.getFields(); - for (int i = 0; i < fields.length; i++) { - char[] potential = fields[i].getNameCharArray(); - if (CharArrayUtils.equals(potential, 0, name.length, name, false)) { - bindings.add(fields[i]); + if (fields != null) { + for (int i = 0; i < fields.length; i++) { + char[] potential = fields[i].getNameCharArray(); + if (CharArrayUtils.equals(potential, 0, name.length, name, false)) { + bindings.add(fields[i]); + } } } } catch (DOMException e) { @@ -138,11 +140,13 @@ public class CPPASTFieldReference extends CPPASTNode implements try { ICPPMethod[] methods = classType.getMethods(); - for (int i = 0; i < methods.length; i++) { - if (!(methods[i] instanceof ICPPConstructor) && !methods[i].isImplicit()) { - char[] potential = methods[i].getNameCharArray(); - if (CharArrayUtils.equals(potential, 0, name.length, name, false)) { - bindings.add(methods[i]); + if (methods != null) { + for (int i = 0; i < methods.length; i++) { + if (!(methods[i] instanceof ICPPConstructor) && !methods[i].isImplicit()) { + char[] potential = methods[i].getNameCharArray(); + if (CharArrayUtils.equals(potential, 0, name.length, name, false)) { + bindings.add(methods[i]); + } } } }