From e562b5e20454d590736d89c05476510d1cb27fbe Mon Sep 17 00:00:00 2001 From: Marc-Andre Laperle Date: Fri, 18 Oct 2013 23:31:53 -0400 Subject: [PATCH] Bug 419900 - NPE in BaseClassLookup.lookupInBaseClass Change-Id: I868bf1918a18a9e7db4aba4d2792510aea03e9a4 Signed-off-by: Marc-Andre Laperle Reviewed-on: https://git.eclipse.org/r/17551 Reviewed-by: Sergey Prigogin --- .../core/dom/parser/cpp/semantics/BaseClassLookup.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/semantics/BaseClassLookup.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/semantics/BaseClassLookup.java index 1175181061c..7f643a26998 100644 --- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/semantics/BaseClassLookup.java +++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/semantics/BaseClassLookup.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2009, 2010 Wind River Systems, Inc. and others. + * Copyright (c) 2009, 2013 Wind River Systems, Inc. and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at @@ -191,7 +191,8 @@ class BaseClassLookup { } } - if (nameQualifier == null || Arrays.equals(baseClassScope.getScopeName().getSimpleID(), nameQualifier.toCharArray())) { + IName baseClassScopeName = baseClassScope.getScopeName(); + if (nameQualifier == null || (baseClassScopeName != null && Arrays.equals(baseClassScopeName.getSimpleID(), nameQualifier.toCharArray()))) { IBinding[] members= CPPSemantics.getBindingsFromScope(baseClassScope, data); if (members != null && members.length > 0 && members[0] != null) { if (data.isPrefixLookup()) {