diff --git a/core/org.eclipse.cdt.ui/schema/PathContainerPage.exsd b/core/org.eclipse.cdt.ui/schema/PathContainerPage.exsd index b9d9a03a840..f0b0f85b455 100644 --- a/core/org.eclipse.cdt.ui/schema/PathContainerPage.exsd +++ b/core/org.eclipse.cdt.ui/schema/PathContainerPage.exsd @@ -65,6 +65,16 @@ + + + + + + + + + + diff --git a/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/cpaths/CPathContainerWizard.java b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/cpaths/CPathContainerWizard.java index 968b250e696..f384e5fd7e7 100644 --- a/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/cpaths/CPathContainerWizard.java +++ b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/cpaths/CPathContainerWizard.java @@ -112,7 +112,7 @@ public class CPathContainerWizard extends Wizard { allContainers.add(0, new ProjectContainerDescriptor(fFilterType)); } fSelectionWizardPage = new CPathContainerSelectionPage( - (IContainerDescriptor[]) allContainers.toArray(new IContainerDescriptor[0])); + (IContainerDescriptor[])allContainers.toArray(new IContainerDescriptor[0])); addPage(fSelectionWizardPage); // add as dummy, will not be shown @@ -162,7 +162,8 @@ public class CPathContainerWizard extends Wizard { fContainerPage = getContainerPage(selected); return fContainerPage; } else if (page == fContainerPage) { - if ( fContainerPage.getContainerEntries().length > 0 && fContainerPage.getContainerEntries()[0] != null) { + if (fContainerPage.finish() && fContainerPage.getContainerEntries().length > 0 + && fContainerPage.getContainerEntries()[0] != null) { fFilterPage.setParentEntry(fContainerPage.getContainerEntries()[0]); } return fFilterPage; diff --git a/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/cpaths/CPathFilterPage.java b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/cpaths/CPathFilterPage.java index 806be89382a..1d0f8cc762a 100644 --- a/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/cpaths/CPathFilterPage.java +++ b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/dialogs/cpaths/CPathFilterPage.java @@ -100,7 +100,9 @@ public class CPathFilterPage extends WizardPage { } else if (fParentEntry.getEntryKind() == IPathEntry.CDT_CONTAINER) { try { IPathEntryContainer container = CoreModel.getPathEntryContainer(fParentEntry.getPath(), fCElement.getCProject()); - fPaths = Arrays.asList(container.getPathEntries()); + if (container != null) { + fPaths = Arrays.asList(container.getPathEntries()); + } } catch (CModelException e) { } }