Bug 25955 [Workbench] Exiting while saving can cause problems
This seems to be a problem with either the workbench in general or the editor structure in particular. I have reproduced this with the Java editor but there is no reason why it wouldn't occur with other editors as well. Dirty a Java editor. Press Ctrl+S to save the editor. While it is saving, quickly close the main perspective window, either by clicking the X or by choosing File->Save. When prompted to save dirty resources say Okay. An error dialog appears stating that the save failed, and a stack trace is printed to the log (sorry, I don't have my log anymore, but it's fairly easy to reproduce). The dialog says: "Problems occurred while trying to save the state of the workbench." Details: "Save cannot be called from inside an operation." I guess the real problem is that I'm able to exit while a workspace operation is taking place. Reproduced on both Win2K and Linux.
bundles/org.eclipse.ui.workbench/extensions/org/eclipse/jface/window/ApplicationWindow.java
* <p>
 * The default implementation of this framework method
 * obtains the symbolic name of the font from the
 * <code>getSymbolicFontName</code> framework method
 * and retrieves this font from JFace's font
 * registry using <code>JFaceResources.getFont</code>.
 * Subclasses may override to use a different registry,
 * etc.
 * </p>
 *
 * @return the default font, or <code>null</code> if none
 */
protected Font getFont() {
	return JFaceResources.getFont(getSymbolicFontName());
}
/**
 * Returns the menu bar manager for this window (if it has one).
 *
 * @return the menu bar manager, or <code>null</code> if
 *   this window does not have a menu bar
 * @see #addMenuBar
 */
public MenuManager getMenuBarManager() {
	return menuBarManager;
}
/**
 * Returns the status line manager for this window (if it has one).
 *
 * @return the status line manager, or <code>null</code> if
 *   this window does not have a status line