Bug 16854 NPE in OleEditor
Windows 2000 Eclipse F1 Noticed many of these entries in my .log. Not sure how to reproduce it. !MESSAGE Problems occurred when invoking code from plug-in: org.eclipse.core.resources. !STACK 0 java.lang.NullPointerException at org.eclipse.ui.internal.editorsupport.win32.OleEditor$1.resourceChanged (OleEditor.java:47) at org.eclipse.core.internal.events.NotificationManager$1.run (NotificationManager.java:128) at org.eclipse.core.internal.runtime.InternalPlatform.run (InternalPlatform.java(Compiled Code)) at org.eclipse.core.runtime.Platform.run(Platform.java(Compiled Code)) at org.eclipse.core.internal.events.NotificationManager.notify (NotificationManager.java:143) at org.eclipse.core.internal.events.NotificationManager.deleting (NotificationManager.java:94) at org.eclipse.core.internal.resources.Workspace.deleting (Workspace.java:673) at org.eclipse.core.internal.resources.Resource.delete (Resource.java:440) at org.eclipse.core.internal.resources.Project.delete(Project.java:293) at org.eclipse.ui.actions.DeleteResourceAction.delete (DeleteResourceAction.java:272) at org.eclipse.ui.actions.DeleteResourceAction.delete (DeleteResourceAction.java:259) at org.eclipse.ui.actions.DeleteResourceAction$2.execute (DeleteResourceAction.java:351) at org.eclipse.ui.actions.WorkspaceModifyOperation$1.run (WorkspaceModifyOperation.java:64) at org.eclipse.core.internal.resources.Workspace.run (Workspace.java:1361) at org.eclipse.ui.actions.WorkspaceModifyOperation.run (WorkspaceModifyOperation.java:78) at org.eclipse.jface.operation.ModalContext$ModalContextThread.run (ModalContext.java:98)
bundles/org.eclipse.ui.win32/src/org/eclipse/ui/internal/editorsupport/win32/OleEditor.java
* editors and set any required flags
	 */
	private void sourceChanged(IFile newFile) {
		FileEditorInput newInput = new FileEditorInput(newFile);
		setInput(newInput);
		setResource(newFile);
		sourceChanged = true;
		setTitle(newInput.getName());
	}
	/* 
	 * See IEditorPart.isSaveOnCloseNeeded() 
	 */
	public boolean isSaveOnCloseNeeded() {
		return !sourceDeleted && super.isSaveOnCloseNeeded();
	}
	/*
		 * Posts the update code "behind" the running operation.
		 *
		 * @param runnable the update code
		 */
	private void update(Runnable runnable) {
		IWorkbench workbench = PlatformUI.getWorkbench();
		IWorkbenchWindow[] windows = workbench.getWorkbenchWindows();
		if (windows != null && windows.length > 0) {
			Display display = windows[0].getShell().getDisplay();
			display.asyncExec(runnable);
		} else
			runnable.run();
	}
}