Bug 289599 [Preferences] PreferenceStore.setToDefault fires redundant PropertyChangeEvents
bundles/org.eclipse.jface/src/org/eclipse/jface/preference/PreferenceStore.java
* 
	 * @param filename
	 *            the file name
	 * @see #load()
	 * @see #save()
	 */
	public PreferenceStore(String filename) {
		this();
		Assert.isNotNull(filename);
		this.filename = filename;
	}
	/*
	 * (non-Javadoc) Method declared on IPreferenceStore.
	 */
	public void addPropertyChangeListener(IPropertyChangeListener listener) {
		addListenerObject(listener);
	}
	/*
	 * (non-Javadoc) Method declared on IPreferenceStore.
	 */
	public boolean contains(String name) {
		return (properties.containsKey(name) || defaultProperties
				.containsKey(name));
	}
	/*
	 * (non-Javadoc) Method declared on IPreferenceStore.
	 */
	public void firePropertyChangeEvent(String name, Object oldValue,
			Object newValue) {
		final Object[] finalListeners = getListeners();