Bug 198904 [DataBinding] Listeners in swt Observables are not removed on dispose
bundles/org.eclipse.jface.databinding/src/org/eclipse/jface/internal/databinding/internal/swt/ComboObservableValue.java
fireValueChange(Diffs.createValueDiff(oldValue,
								currentValue));
					}
				}
			});
		} else
			throw new IllegalArgumentException();
	}
	public void doSetValue(final Object value) {
		String oldValue = combo.getText();
		try {
			updating = true;
			if (attribute.equals(SWTProperties.TEXT)) {
				String stringValue = value != null ? value.toString() : ""; 
				combo.setText(stringValue);
			} else if (attribute.equals(SWTProperties.SELECTION)) {
				String items[] = combo.getItems();
				int index = -1;
				if (items != null && value != null) {
					for (int i = 0; i < items.length; i++) {
						if (value.equals(items[i])) {
							index = i;
							break;
						}
					}
					if (index == -1) {
						combo.setText((String) value);
					} else {
						combo.select(index); 
					}