Bug 262022 [FieldAssist] ContentProposalAdapter.recomputeProposals might throw a NPE
When a control using content proposal gets disposed during usage the recomputeProposals() method might throw a NPE. This is caused by getting "allProposals" using a call to getProposals() which is allowed to return null. When using allProposals.length this will crash. I'm not sure if the simple solution if ((allProposals == null) || (allProposals.length == 0) { proposals = new IContentProposal[0]; close(); } else { // cont. will work or if the popup will have problems with a disposed control.
bundles/org.eclipse.jface/src/org/eclipse/jface/fieldassist/ContentProposalAdapter.java
/*
	 * Flag that indicates whether the adapter is enabled. In some cases,
	 * adapters may be installed but depend upon outside state.
	 */
	private boolean isEnabled = true;
	/*
	 * The delay in milliseconds used when autoactivating the popup.
	 */
	private int autoActivationDelay = 0;
	/*
	 * A boolean indicating whether a keystroke has been received. Used to see
	 * if an autoactivation delay was interrupted by a keystroke.
	 */
	private boolean receivedKeyDown;
	/*
	 * The desired size in pixels of the proposal popup.
	 */
	private Point popupSize;
	/*
	 * The remembered position of the insertion position. Not all controls will
	 * restore the insertion position if the proposal popup gets focus, so we
	 * need to remember it.
	 */
	private int insertionPos = -1;
	/*
	 * The remembered selection range. Not all controls will restore the
	 * selection position if the proposal popup gets focus, so we need to
	 * remember it.
	 */
	private Point selectionRange = new Point(-1, -1);