Bug 278550 [Databinding] ObservablesManager, ObservableTracker and MapSimpleValueObservableMap lead to exception
bundles/org.eclipse.core.databinding.observable/src/org/eclipse/core/databinding/observable/ObservableTracker.java
currentGetterCalledSet.set(lastObservableSet);
			currentChangeListener.set(lastChangeListener);
			currentStaleListener.set(lastStaleListener);
		}
		return (IObservable[]) observableSet
				.toArray(new IObservable[observableSet.size()]);
	}
	
	/**
	 * Invokes the given runnable, and returns the set of IObservables that were
	 * created by the runnable. If the runnable calls this method recursively,
	 * the result will not contain IObservables that were created within the
	 * inner runnable.
	 * 
	 * @param runnable
	 *            runnable to execute
	 * @return an array of unique observable objects
	 * @since 1.2
	 */
	public static IObservable[] runAndCollect(Runnable runnable) {
		Set lastObservableCreatedSet = (Set) currentObservableCreatedSet.get();
		Set observableSet = new IdentitySet();
		
		currentObservableCreatedSet.set(observableSet);
		try {
			runnable.run();
		} finally {