getShell().getDisplay().syncExec(new Runnable() { public void run() { revertAndUpdate = MessageDialog.openQuestion(getShell(), Policy.bind("SyncAction.override"), Policy.bind("SyncAction.override.confirm"));
if (!revertAndUpdate) return; if (!prompted) { getShell().getDisplay().syncExec(new Runnable() { public void run() { revertAndUpdate = MessageDialog.openQuestion(getShell(), Policy.bind("SyncAction.override"), Policy.bind("SyncAction.override.confirm")); } }); prompted = true; } if (!revertAndUpdate) return; IResource[] modifiedResourceArray = extractResources(modifiedResources, set); IResource[] resourceArray = extractResources(resources, set); if (modifiedResourceArray != null && modifiedResourceArray.length > 0) { monitor.beginTask(null, 100); try { new RevertResourcesCommand(provider.getSVNWorkspaceRoot(),modifiedResourceArray).run(Policy.subMonitorFor(monitor,100)); } catch (SVNException e) { collectStatus(e.getStatus()); } finally { monitor.done();
	protected void run(SVNTeamProvider provider, SyncInfoSet set, IProgressMonitor monitor) throws InvocationTargetException, InterruptedException {		getShell().getDisplay().syncExec(new Runnable() {			public void run() {				revertAndUpdate = MessageDialog.openQuestion(getShell(), Policy.bind("SyncAction.override"), Policy.bind("SyncAction.override.confirm"));			}		});		if (!revertAndUpdate) return;		if (modifiedResources != null && modifiedResources.length > 0) new RevertOperation(getPart(), modifiedResources).run();		new UpdateOperation(getPart(), resources, SVNRevision.HEAD, true).run();	}