version 1.237, 2008/05/22 06:50:18 |
version 1.238, 2008/06/08 02:52:24 |
|
|
CVSENTRIES *entlist = NULL; |
CVSENTRIES *entlist = NULL; |
const char *state; |
const char *state; |
char repo[MAXPATHLEN], rcsfile[MAXPATHLEN]; |
char repo[MAXPATHLEN], rcsfile[MAXPATHLEN]; |
char r1[CVS_REV_BUFSZ], r2[CVS_REV_BUFSZ]; |
|
|
|
cvs_log(LP_TRACE, "cvs_file_classify(%s, %s)", cf->file_path, |
cvs_log(LP_TRACE, "cvs_file_classify(%s, %s)", cf->file_path, |
(tag != NULL) ? tag : "none"); |
(tag != NULL) ? tag : "none"); |
|
|
cf->file_flags |= FILE_HAS_TAG; |
cf->file_flags |= FILE_HAS_TAG; |
if (tag != NULL && cf->file_rcs != NULL) { |
if (tag != NULL && cf->file_rcs != NULL) { |
if ((cf->file_rcsrev = rcs_translate_tag(tag, cf->file_rcs)) |
if ((cf->file_rcsrev = rcs_translate_tag(tag, cf->file_rcs)) |
!= NULL) { |
== NULL) { |
rcsnum_tostr(cf->file_rcsrev, r1, sizeof(r1)); |
|
} else { |
|
cf->file_rcsrev = rcs_translate_tag(NULL, cf->file_rcs); |
cf->file_rcsrev = rcs_translate_tag(NULL, cf->file_rcs); |
if (cf->file_rcsrev != NULL) { |
if (cf->file_rcsrev != NULL) { |
notag = 1; |
notag = 1; |
|
|
cf->file_rcsrev = NULL; |
cf->file_rcsrev = NULL; |
} |
} |
|
|
if (cf->file_ent != NULL) |
|
rcsnum_tostr(cf->file_ent->ce_rev, r1, sizeof(r1)); |
|
if (cf->file_rcsrev != NULL) |
|
rcsnum_tostr(cf->file_rcsrev, r2, sizeof(r2)); |
|
|
|
ismodified = rcsdead = 0; |
ismodified = rcsdead = 0; |
if (cf->fd != -1 && cf->file_ent != NULL) { |
if (cf->fd != -1 && cf->file_ent != NULL) { |
if (fstat(cf->fd, &st) == -1) |
if (fstat(cf->fd, &st) == -1) |
|
|
} else if (cf->file_rcs == NULL || rcsdead == 1) { |
} else if (cf->file_rcs == NULL || rcsdead == 1) { |
cf->file_status = FILE_REMOVE_ENTRY; |
cf->file_status = FILE_REMOVE_ENTRY; |
} else { |
} else { |
if (strcmp(r1, r2)) { |
if (rcsnum_differ(cf->file_ent->ce_rev, |
|
cf->file_rcsrev) && cvs_cmdop != CVS_OP_ADD) { |
cvs_log(LP_NOTICE, |
cvs_log(LP_NOTICE, |
"conflict: removed %s was modified" |
"conflict: removed %s was modified" |
" by a second party", |
" by a second party", |
|
|
else |
else |
cf->file_status = FILE_UPTODATE; |
cf->file_status = FILE_UPTODATE; |
|
|
if (strcmp(r1, r2)) { |
if (rcsnum_differ(cf->file_ent->ce_rev, |
|
cf->file_rcsrev)) { |
if (cf->file_status == FILE_MODIFIED) |
if (cf->file_status == FILE_MODIFIED) |
cf->file_status = FILE_MERGE; |
cf->file_status = FILE_MERGE; |
else |
else |