Bug 32531 NPE importing preferences
Build id: 200302211557 Got error messages when importing preferences. I couldn't reproduce the problem anymore. Will attach stack traces (two generated in a row). Top entries are: java.lang.NullPointerException at org.eclipse.jdt.internal.ui.packageview.PackageExplorerContentProvider.rootsAndC ontainers(PackageExplorerContentProvider.java:153) at org.eclipse.jdt.internal.ui.packageview.PackageExplorerContentProvider.getChildr en(PackageExplorerContentProvider.java:131) at org.eclipse.jdt.internal.ui.packageview.PackageExplorerPart$4.getFilteredChildre n(PackageExplorerPart.java:352) at org.eclipse.jface.viewers.StructuredViewer.getSortedChildren (StructuredViewer.java:555) at org.eclipse.jface.viewers.AbstractTreeViewer.updateChildren (AbstractTreeViewer.java:1282) at org.eclipse.jface.viewers.AbstractTreeViewer.internalRefresh (AbstractTreeViewer.java:925) at org.eclipse.jface.viewers.AbstractTreeViewer.internalRefresh (AbstractTreeViewer.java:934) at org.eclipse.jface.viewers.AbstractTreeViewer.internalRefresh (AbstractTreeViewer.java:895) at org.eclipse.jface.viewers.AbstractTreeViewer.internalRefresh (AbstractTreeViewer.java:881) at org.eclipse.jface.viewers.StructuredViewer$7.run(StructuredViewer.java:858) at org.eclipse.jface.viewers.StructuredViewer.preservingSelection (StructuredViewer.java:798) at org.eclipse.jface.viewers.StructuredViewer.refresh(StructuredViewer.java:856) at org.eclipse.jface.viewers.StructuredViewer.refresh(StructuredViewer.java:818) at org.eclipse.jdt.internal.ui.packageview.PackageExplorerPart.propertyChange (PackageExplorerPart.java:1062)
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/packageview/PackageExplorerContentProvider.java
public Object[] getChildren(Object parentElement) {
		Object[] children= NO_CHILDREN;
		try {
			if (parentElement instanceof IJavaModel) 
				return concatenate(getJavaProjects((IJavaModel)parentElement), getNonJavaProjects((IJavaModel)parentElement));
			if (parentElement instanceof ClassPathContainer)
				return getContainerPackageFragmentRoots((ClassPathContainer)parentElement);
				
			if (parentElement instanceof IProject) 
				return ((IProject)parentElement).members();
					
			if (needsToDelegate(parentElement)) {
				Object[] packageFragments= fPackageFragmentProvider.getChildren(parentElement);
				children= getWithParentsResources(packageFragments, parentElement);
			} else {
				children= super.getChildren(parentElement);
			}
	
			if (parentElement instanceof IJavaProject) {
				IJavaProject project= (IJavaProject)parentElement;
				return rootsAndContainers(project, children);
			}
			else
				return children;
		} catch (CoreException e) {
			return NO_CHILDREN;
		}
	}
	private Object[] rootsAndContainers(IJavaProject project, Object[] roots) { 
		List result= new ArrayList(roots.length);