From 0d8039b1537e6258e4a83ecc757ea04b0aeb2831 Mon Sep 17 00:00:00 2001 From: mar Date: Wed, 2 May 1990 15:52:10 +0000 Subject: [PATCH] make sure FixCase uppercases starting letters --- lib/fixname.c | 36 +++++++++--------------------------- 1 file changed, 9 insertions(+), 27 deletions(-) diff --git a/lib/fixname.c b/lib/fixname.c index 356a4ec4..9f931eef 100644 --- a/lib/fixname.c +++ b/lib/fixname.c @@ -51,24 +51,7 @@ void FixName(ilnm, ifnm, last, first, middle) #endif notdef strncpy(first, ifnm, FIRST_LEN); } -#ifdef notdef -AppendJrOrIII(nm, phas_jr, phas_iii, phas_iv) -register char *nm; -register int *phas_jr; -register int *phas_iii; -register int *phas_iv; -{ - if (*phas_jr) { - strcat(nm, ", Jr."); - } - else if (*phas_iii) { - strcat(nm, " III"); - } - else if (*phas_iv) { - strcat(nm, " IV"); - } -} -#endif notdef + FixCase(p) register char *p; { @@ -76,15 +59,14 @@ register char *p; /* a space or punctuation mark (e.g., '-') */ for (cflag = 0; *p; p++) { - if (cflag && isupper(*p)) { - *p = tolower(*p); - } - else if (isspace(*p) || ispunct(*p)) { - cflag = 0; - } - else { - cflag = 1; - } + if (cflag && isupper(*p)) + *p = tolower(*p); + else if (!cflag && islower(*p)) + *p = toupper(*p); + if (isalpha(*p)) + cflag = 1; + else + cflag = 0; } } -- 2.45.2