Bug 29491 [DND] Check NavigatorDragAdapter use of IResource.getLocation
bundles/org.eclipse.ui.views/src/org/eclipse/ui/views/navigator/NavigatorDragAdapter.java
public NavigatorDragAdapter(ISelectionProvider provider) {
		selectionProvider = provider;
	}
	/**
	 * @see DragSourceListener#dragFinished
	 */
	public void dragFinished(DragSourceEvent event) {
		if (event.doit == false) {
			return;
		}
		final int typeMask = IResource.FOLDER | IResource.FILE;
		if (event.detail == DND.DROP_MOVE) {
			IResource[] resources = getSelectedResources(typeMask);	
			DragSource dragSource = (DragSource) event.widget;
			Control control = dragSource.getControl();
			Shell shell = control.getShell();
			ReadOnlyStateChecker checker;
			
			if (resources == null || resources.length == 0)
				return;
			
			checker = new ReadOnlyStateChecker(shell, CHECK_MOVE_TITLE, CHECK_DELETE_MESSAGE);
			resources = checker.checkReadOnlyResources(resources);		
			
			for (int i = 0; i < resources.length; i++) {
				try {
					resources[i].delete(IResource.KEEP_HISTORY | IResource.FORCE, null);
				} catch (CoreException e) {
					e.printStackTrace();
				}