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
if (deltas == null)
			return false;
		
		if (deltas.length > 1) {
			
			postRefresh(parent);
			return true;
		}
		for (int i= 0; i < deltas.length; i++) {
			if (processResourceDelta(deltas[i], parent))
				return true;
		}
		return false;
	}
	
	private void postRefresh(final Object root) {
		postRefresh(root, true);
	}
	
	private void postRefresh(final Object root, final boolean updateLabels) {
		postRunnable(new Runnable() {
			public void run() {
				Control ctrl= fViewer.getControl();
				if (ctrl != null && !ctrl.isDisposed()){
					fViewer.refresh(root, updateLabels);
				}
			}
		});
	}
	private void postAdd(final Object parent, final Object element) {