Bug 138902 CVS synchronize operation marks file as 'edited'
diff --git a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/mappings/WorkspaceSubscriberContext.java b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/mappings/WorkspaceSubscriberContext.java
index a48154f..b6bbf58 100644
--- a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/mappings/WorkspaceSubscriberContext.java
+++ b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/mappings/WorkspaceSubscriberContext.java
@@ -423,4 +423,21 @@
}
return tree;
}
+
+ protected void performReplace(IDiff diff, IProgressMonitor monitor) throws CoreException {
+ IResource resource = ResourceDiffTree.getResourceFor(diff);
+ if (resource.getType() == IResource.FILE){
+ IFile file = (IFile) resource;
+ ICVSFile mFile = CVSWorkspaceRoot.getCVSFileFor(file);
+ try {
+ // The file may have been set as read-only by a previous checkout/update
+ if (mFile.isReadOnly()) mFile.setReadOnly(false);
+ } catch (CVSException e) {
+ // Just log and keep going
+ CVSProviderPlugin.log(e);
+ }
+ }
+ super.performReplace(diff, monitor);
+
+ }
}
\ No newline at end of file