Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/client/UpdatedHandler.java')
-rw-r--r--bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/client/UpdatedHandler.java13
1 files changed, 8 insertions, 5 deletions
diff --git a/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/client/UpdatedHandler.java b/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/client/UpdatedHandler.java
index ef4b4fb7c..320b18a50 100644
--- a/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/client/UpdatedHandler.java
+++ b/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/client/UpdatedHandler.java
@@ -11,6 +11,7 @@ import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.team.ccvs.core.ICVSFile;
import org.eclipse.team.ccvs.core.ICVSFolder;
import org.eclipse.team.internal.ccvs.core.CVSException;
+import org.eclipse.team.internal.ccvs.core.client.Command.KSubstOption;
import org.eclipse.team.internal.ccvs.core.syncinfo.ResourceSyncInfo;
import org.eclipse.team.internal.ccvs.core.util.Assert;
import org.eclipse.team.internal.ccvs.core.util.EntryFileDateFormat;
@@ -71,6 +72,7 @@ class UpdatedHandler extends ResponseHandler {
String repositoryFile = session.readLine();
String entryLine = session.readLine();
String permissionsLine = session.readLine();
+ ResourceSyncInfo info = new ResourceSyncInfo(entryLine, permissionsLine, null);
// clear file update modifiers
Date modTime = session.getModTime();
@@ -83,8 +85,8 @@ class UpdatedHandler extends ResponseHandler {
Assert.isTrue(mParent.exists());
ICVSFile mFile = mParent.getFile(fileName);
- boolean binary = entryLine.indexOf("/" + ResourceSyncInfo.BINARY_TAG) != -1; //$NON-NLS-1$
- boolean readOnly = permissionsLine.indexOf(READ_ONLY_FLAG) == -1;
+ boolean binary = KSubstOption.fromMode(info.getKeywordMode()).isBinary();
+ boolean readOnly = info.getPermissions().indexOf(READ_ONLY_FLAG) == -1;
session.receiveFile(mFile, binary, handlerType, monitor);
if (readOnly) mFile.setReadOnly(true);
@@ -101,14 +103,15 @@ class UpdatedHandler extends ResponseHandler {
// having outgoing changes.
// The purpose for having the two different timestamp options for merges is to
// dissallow commit of files that have conflicts until they have been manually edited.
- if(entryLine.indexOf(ResourceSyncInfo.MERGE_UNMODIFIED) != -1) {
+ if(info.getTimeStamp().indexOf(ResourceSyncInfo.MERGE_UNMODIFIED) != -1) {
timestamp = ResourceSyncInfo.RESULT_OF_MERGE_CONFLICT + mFile.getTimeStamp();
} else {
timestamp = ResourceSyncInfo.RESULT_OF_MERGE;
}
} else {
timestamp = mFile.getTimeStamp();
- }
- mFile.setSyncInfo(new ResourceSyncInfo(entryLine, permissionsLine, timestamp));
+ }
+ mFile.setSyncInfo(new ResourceSyncInfo(info.getName(), info.getRevision(),
+ timestamp, info.getKeywordMode(), info.getTag(), info.getPermissions()));
}
} \ No newline at end of file

Back to the top