From e0b1937020793057ce96ee45591a9c35d1fe8704 Mon Sep 17 00:00:00 2001 From: Mohamed Hussein Date: Mon, 15 Aug 2011 12:18:42 -0400 Subject: [PATCH] Bug 351422 - CModelUtil.getSourceFolder returns non-source folders. --- .../eclipse/cdt/internal/corext/util/CModelUtil.java | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/corext/util/CModelUtil.java b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/corext/util/CModelUtil.java index cf72713696e..f0fea27fd0c 100644 --- a/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/corext/util/CModelUtil.java +++ b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/corext/util/CModelUtil.java @@ -71,21 +71,17 @@ public class CModelUtil { */ public static ICContainer getSourceFolder(ICElement element) { ICContainer folder = null; - if (element != null) { - boolean foundSourceRoot = false; + if (element != null) { ICElement curr = element; - while (curr != null && !foundSourceRoot) { - if (curr instanceof ICContainer && folder == null) { - folder = (ICContainer)curr; - } - foundSourceRoot = (curr instanceof ISourceRoot); + while (curr != null && !(curr instanceof ISourceRoot)) { curr = curr.getParent(); } + folder = (ISourceRoot)curr; if (folder == null) { ICProject cproject = element.getCProject(); folder = cproject.findSourceRoot(cproject.getProject()); } - } + } return folder; }