Bug 15844 [Exception Handling] SelectionChange events and NPE
Build 20020508 Due to new global actions there are now more objects listening to selection changes send out by a JFace viewer. We now had the case that one of the listener generated a NPE. As a result all listeners registered after that one didn't receive the selection change event. StructuredViewers should be more fault tolorant to exceptions when informing listeners.
bundles/org.eclipse.jface/src/org/eclipse/jface/viewers/StructuredViewer.java
* the element may appear or disappear if the change affects whether or not the element
 * is filtered out.
 * </p>
 *
 * @param element the element
 * @param properties the properties that have changed, or <code>null</code> to indicate unknown
 */
public void update(Object element, String[] properties) {
	Assert.isNotNull(element);
	Widget item = findItem(element);
	if (item == null)
		return;
		
	boolean needsRefilter = false;
	if (properties != null) {
		for (int i = 0; i < properties.length; ++i) {
			needsRefilter = needsRefilter(element, properties[i]);
			if (needsRefilter)
				break;
		}
	}
	if (needsRefilter) {
		refresh();
		return;
	}
	boolean needsUpdate;
	if (properties == null) {
		needsUpdate = true;
	}
	else {