Bug 123965 [Preferences] Cancelling Compiler Error/Warning property page still puts them in effect
Eclipse 3.2 M4 When changing the "Non-externalized strings" field (under properties -> java compiler -> Errors/Warnings) from Ignore to Error a message appears stating that a project rebuild is required for the changes to take effect. Unfortunately, the rebuild still occurs even if the user clicks Cancel. Also, once the cancel button returns the user to the settings window the OK button is no longer available and the user must click the cancel button. Futhermore, even after the cancel button is clicked, the setting changes are still put into effect.
bundles/org.eclipse.jface/src/org/eclipse/jface/preference/PreferenceDialog.java
/**
	 * @return the <code>TreeViewer</code> for this dialog.
	 * @since 3.0
	 */
	protected TreeViewer getTreeViewer() {
		return treeViewer;
	}
	/**
	 * Save the values specified in the pages.
	 * <p>
	 * The default implementation of this framework method saves all pages of
	 * type <code>PreferencePage</code> (if their store needs saving and is a
	 * <code>PreferenceStore</code>).
	 * </p>
	 * <p>
	 * Subclasses may override.
	 * </p>
	 */
	protected void handleSave() {
		Iterator nodes = preferenceManager.getElements(PreferenceManager.PRE_ORDER).iterator();
		while (nodes.hasNext()) {
			IPreferenceNode node = (IPreferenceNode) nodes.next();
			IPreferencePage page = node.getPage();
			if (page instanceof PreferencePage) {
				
				IPreferenceStore store = ((PreferencePage) page).getPreferenceStore();
				if (store != null && store.needsSaving()
						&& store instanceof IPersistentPreferenceStore) {
					try {
						((IPersistentPreferenceStore) store).save();