diff options
Diffstat (limited to 'contrib/cvs/src/status.c')
-rw-r--r-- | contrib/cvs/src/status.c | 23 |
1 files changed, 15 insertions, 8 deletions
diff --git a/contrib/cvs/src/status.c b/contrib/cvs/src/status.c index b7853e5..2e2957e 100644 --- a/contrib/cvs/src/status.c +++ b/contrib/cvs/src/status.c @@ -10,8 +10,8 @@ #include "cvs.h" -static Dtype status_dirproc PROTO ((void *callerdat, char *dir, - char *repos, char *update_dir, +static Dtype status_dirproc PROTO ((void *callerdat, const char *dir, + const char *repos, const char *update_dir, List *entries)); static int status_fileproc PROTO ((void *callerdat, struct file_info *finfo)); static int tag_list_proc PROTO((Node * p, void *closure)); @@ -107,7 +107,8 @@ cvsstatus (argc, argv) err = start_recursion (status_fileproc, (FILESDONEPROC) NULL, status_dirproc, (DIRLEAVEPROC) NULL, NULL, argc, argv, local, - W_LOCAL, 0, CVS_LOCK_READ, (char *) NULL, 1); + W_LOCAL, 0, CVS_LOCK_READ, (char *) NULL, 1, + (char *) NULL); return (err); } @@ -152,9 +153,15 @@ status_fileproc (callerdat, finfo) sstat = "Locally Removed"; break; case T_MODIFIED: - if (vers->ts_conflict) + if ( vers->ts_conflict + && ( file_has_conflict ( finfo, vers->ts_conflict ) + || file_has_markers ( finfo ) ) ) sstat = "File had conflicts on merge"; else + /* Note that we do not re Register() the file when we spot + * a resolved conflict like update_fileproc() does on the + * premise that status should not alter the sandbox. + */ sstat = "Locally Modified"; break; case T_REMOVE_ENTRY: @@ -316,9 +323,9 @@ status_fileproc (callerdat, finfo) static Dtype status_dirproc (callerdat, dir, repos, update_dir, entries) void *callerdat; - char *dir; - char *repos; - char *update_dir; + const char *dir; + const char *repos; + const char *update_dir; List *entries; { if (!quiet) @@ -344,7 +351,7 @@ tag_list_proc (p, closure) + (branch ? strlen (branch) : strlen (p->data))); sprintf (buf, "\t%-25s\t(%s: %s)\n", p->key, branch ? "branch" : "revision", - branch ? branch : p->data); + branch ? branch : (char *)p->data); cvs_output (buf, 0); free (buf); |