if (descriptor.getTimeStamp() == stamp)
if (current.getTimeStamp() == stamp) { descriptor= current;
		private RefactoringDescriptor requestDescriptor(final RefactoringDescriptorProxy proxy, final IProgressMonitor monitor) {			Assert.isNotNull(proxy);			Assert.isNotNull(monitor);			try {				monitor.beginTask(RefactoringCoreMessages.RefactoringHistoryService_resolving_information, 12);				final long stamp= proxy.getTimeStamp();				RefactoringDescriptor descriptor= null;				final IProgressMonitor subMonitor= new SubProgressMonitor(monitor, 4);				try {					subMonitor.beginTask(RefactoringCoreMessages.RefactoringHistoryService_resolving_information, fImplementation.size());					for (final Iterator iterator= fImplementation.iterator(); iterator.hasNext();) {						descriptor= (RefactoringDescriptor) iterator.next();						subMonitor.worked(1);						if (descriptor.getTimeStamp() == stamp)							break;					}				} finally {					subMonitor.done();				}				if (monitor.isCanceled())					throw new OperationCanceledException();				monitor.worked(1);				if (descriptor == null) {					final String name= proxy.getProject();					final IFileStore store= EFS.getLocalFileSystem().getStore(RefactoringCorePlugin.getDefault().getStateLocation()).getChild(NAME_HISTORY_FOLDER);					if (name != null && !"".equals(name)) {//$NON-NLS-1$						try {							final IProject project= ResourcesPlugin.getWorkspace().getRoot().getProject(name);							if (project.isAccessible()) {								if (hasProjectHistory(project)) {									final URI uri= project.getLocationURI();									if (uri != null)										return getManager(EFS.getStore(uri).getChild(RefactoringHistoryService.NAME_HISTORY_FOLDER), name).requestDescriptor(proxy, new SubProgressMonitor(monitor, 1));								} else									return getManager(store.getChild(name), name).requestDescriptor(proxy, new SubProgressMonitor(monitor, 1));							}						} catch (CoreException exception) {							// Do nothing						}					} else						return getManager(store.getChild(NAME_WORKSPACE_PROJECT), null).requestDescriptor(proxy, new SubProgressMonitor(monitor, 1));				}				monitor.worked(6);				return descriptor;			} finally {				monitor.done();			}		}