Index: src/cvs.h =================================================================== RCS file: /usr/local/cvs/cvsnt/src/cvs.h,v retrieving revision 1.93.2.208 diff -c -r1.93.2.208 cvs.h *** src/cvs.h 8 May 2006 13:17:08 -0000 1.93.2.208 --- src/cvs.h 13 Nov 2006 06:07:44 -0000 *************** *** 1122,1127 **** --- 1122,1128 ---- int old_checkout_n_behaviour; int hide_extended_status; int ignore_client_wrappers; + char author_space; /* what to replace spaces in the author with */ } cvs_compat_t; extern int compat_level; Index: src/log.cpp =================================================================== RCS file: /usr/local/cvs/cvsnt/src/log.c,v retrieving revision 1.32.2.42 diff -c -r1.32.2.42 log.cpp *** src/log.cpp 15 Jan 2006 13:09:11 -0000 1.32.2.42 --- src/log.cpp 14 Nov 2006 21:19:56 -0000 *************** *** 153,162 **** static struct log_data log_data; static int is_rlog, is_rcs, supress_extra_fields; static const char *const log_usage[] = { ! "Usage: %s %s [-lRhtNbT] [-r[revisions]] [-B bugid] [-d dates] [-s states]\n", " [-w[logins]] [files...]\n", "\t-B bugid\tOnly list revisions related to bug.\n", "\t-b\t\tOnly list revisions on the default branch.\n", --- 153,163 ---- static struct log_data log_data; static int is_rlog, is_rcs, supress_extra_fields; + static int supress_blanks_in_author; static const char *const log_usage[] = { ! "Usage: %s %s [-lRhtNbTxXzZ] [-r[revisions]] [-B bugid] [-d dates] [-s states]\n", " [-w[logins]] [files...]\n", "\t-B bugid\tOnly list revisions related to bug.\n", "\t-b\t\tOnly list revisions on the default branch.\n", *************** *** 182,187 **** --- 183,190 ---- "\t-w[logins] \tOnly list revisions checked in by specified logins.\n", "\t-X\t\tcvs 1.x/RCS 5.7 compatible output.\n", "\t-x\t\tcvsnt 2.x compatible output (default).\n", + "\t-z\t\tConvert spaces in author to hyphens for more compatible output.\n", + "\t-Z\t\tAuthor in cvsnt 2.x format (with spaces).\n", "(Specify the --help global option for a list of other help options)\n", NULL }; *************** *** 223,228 **** --- 226,232 ---- is_rcs = (strcmp (command_name, "rcsfile") == 0); is_rlog = is_rcs || (strcmp (command_name, "rlog") == 0); supress_extra_fields = is_rcs || compat[compat_level].hide_extended_status; + supress_blanks_in_author=supress_extra_fields; if (argc == -1) usage (log_usage); *************** *** 232,238 **** log_data.local_time_offset = get_local_time_offset(); optind = 0; ! while ((c = getopt (argc, argv, "+bd:hSlNB:RxXr::s:tw::To:")) != -1) { switch (c) { --- 236,243 ---- log_data.local_time_offset = get_local_time_offset(); optind = 0; ! ! while ((c = getopt (argc, argv, "+bd:hSlNB:RxXzZr::s:tw::To:")) != -1) { switch (c) { *************** *** 289,294 **** --- 294,305 ---- case 'X': supress_extra_fields = 1; break; + case 'z': + supress_blanks_in_author = 1; + break; + case 'Z': + supress_blanks_in_author = 0; + break; case 'o': log_data.local_time_offset=atoi(optarg); break; *************** *** 1693,1698 **** --- 1704,1721 ---- cvs_output (buf, 0); cvs_output ("; author: ", 0); + if (supress_blanks_in_author) + { + if (ver->author!=NULL) + { + char *authorpos; + for (authorpos=ver->author;*authorpos!='\0';authorpos++) + { + if ((*authorpos==' ')||(*authorpos=='\t')) + *authorpos=compat[compat_level].author_space; + } + } + } cvs_output (ver->author, 0); cvs_output ("; state: ", 0); Index: src/main.cpp =================================================================== RCS file: /usr/local/cvs/cvsnt/src/main.c,v retrieving revision 1.71.2.151 diff -c -r1.71.2.151 main.cpp *** src/main.cpp 28 Jun 2006 12:29:24 -0000 1.71.2.151 --- src/main.cpp 14 Nov 2006 22:59:33 -0000 *************** *** 514,519 **** --- 514,530 ---- if(!CGlobalSettings::GetGlobalValue("cvsnt","PServer","Compat0_HideStatus",buffer,sizeof(buffer))) compat[0].hide_extended_status = atoi(buffer); + if(!CGlobalSettings::GetGlobalValue("cvsnt","PServer","Compat0_AuthorSpace",buffer,sizeof(buffer))) + { + compat[0].author_space = buffer[0]; + if (compat[0].author_space == '\0') + compat[0].author_space = '-'; + if (strcmp(buffer,"NULL")==0) + compat[0].author_space = '\0'; + } + else + compat[0].author_space = '-'; + if(!CGlobalSettings::GetGlobalValue("cvsnt","PServer","Compat0_IgnoreWrappers",buffer,sizeof(buffer))) compat[0].ignore_client_wrappers = atoi(buffer); *************** *** 525,530 **** --- 536,552 ---- if(!CGlobalSettings::GetGlobalValue("cvsnt","PServer","Compat1_HideStatus",buffer,sizeof(buffer))) compat[1].hide_extended_status = atoi(buffer); + + if(!CGlobalSettings::GetGlobalValue("cvsnt","PServer","Compat1_AuthorSpace",buffer,sizeof(buffer))) + { + compat[1].author_space = buffer[0]; + if (compat[1].author_space == '\0') + compat[1].author_space = '-'; + if (strcmp(buffer,"NULL")==0) + compat[1].author_space = '\0'; + } + else + compat[1].author_space = '-'; if(!CGlobalSettings::GetGlobalValue("cvsnt","PServer","Compat1_IgnoreWrappers",buffer,sizeof(buffer))) compat[1].ignore_client_wrappers = atoi(buffer);