Bug 50022 [DND] NPE in DelegatingDragAdapter
DelegatingDragAdapater defines a list "activeListeners" but initializes it only in DragStart. However, the list is referenced in removeDragSourceListener without a null check, thus causing a null pointer exception if no dragStart ever occured.
bundles/org.eclipse.jface/src/org/eclipse/jface/util/DelegatingDragAdapter.java
((TransferDragSourceListener)iterator.next()).dragFinished(event);
				}
			}
		});
		currentListener = null;
		activeListeners = null;
	}
	/**
	 * The drop data is requested.
	 * Updates the current listener and then forwards the event to it.
	 * 
	 * @param event the drag source event
	 * @see DragSourceListener#dragSetData(DragSourceEvent)
	 */
	public void dragSetData(final DragSourceEvent event) {
		
		updateCurrentListener(event);	
		if (currentListener != null) {
			Platform.run(new SafeRunnable() {
				public void run() throws Exception {			
					currentListener.dragSetData(event);
				}
			});
		}
	}
	/**
	 * A drag operation has started.
	 * Forwards this event to each listener. A listener must set <code>event.doit</code> 
	 * to <code>false</code> if it cannot handle the drag operation. If a listener can  
	 * handle the drag, it is added to the list of active listeners.