Bug 220696 [Undo] When deleting files and externally moving files from navigator, we get an exception
Build ID: M20071023-1652 Steps To Reproduce: Delete files from navigator view. Copy files from another folder to workspace using an external shell like command on windows. Refresh workspace. Repeat More information: from time to time, you get this exception: An internal error occurred during: "Deleting resources". java.lang.ArrayIndexOutOfBoundsException: 2 at org.eclipse.ui.ide.undo.AbstractResourcesOperation.setTargetResources(AbstractResourcesOperation.java:323) at org.eclipse.ui.ide.undo.AbstractResourcesOperation.<init>(AbstractResourcesOperation.java:71) at org.eclipse.ui.ide.undo.DeleteResourcesOperation.<init>(DeleteResourcesOperation.java:53) at org.eclipse.ui.actions.DeleteResourceAction$4.run(DeleteResourceAction.java:503) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)
bundles/org.eclipse.ui.ide/src/org/eclipse/ui/ide/undo/AbstractResourcesOperation.java
ruleArray[i * 3] = getWorkspaceRuleFactory().createRule(
						resource);
				
				ruleArray[i * 3 + 1] = getWorkspaceRuleFactory().modifyRule(
						resource);
				
				ruleArray[i * 3 + 2] = getWorkspaceRuleFactory().charsetRule(
						resource);
			}
		}
		return MultiRule.combine(ruleArray);
	}
	/**
	 * Compute a scheduling rule for deleting resources.
	 * 
	 * @return a scheduling rule appropriate for deleting the resources
	 *         specified in the receiver.
	 */
	protected ISchedulingRule computeDeleteSchedulingRule() {
		ISchedulingRule[] ruleArray = new ISchedulingRule[resources.length * 2];
		for (int i = 0; i < resources.length; i++) {
			ruleArray[i * 2] = getWorkspaceRuleFactory().deleteRule(
					resources[i]);
			
			
			ruleArray[i * 2 + 1] = getWorkspaceRuleFactory().modifyRule(
					resources[i]);
		}
		return MultiRule.combine(ruleArray);
	}