diff src/casefiddle.c @ 199:169c0442b401 r20-3b26

Import from CVS: tag r20-3b26
author cvs
date Mon, 13 Aug 2007 10:00:33 +0200
parents 3d6bfa290dbd
children c5d627a313b1
line wrap: on
line diff
--- a/src/casefiddle.c	Mon Aug 13 10:00:04 2007 +0200
+++ b/src/casefiddle.c	Mon Aug 13 10:00:33 2007 +0200
@@ -45,7 +45,12 @@
 	  CHECK_CHAR_COERCE_INT (obj);
 	  c = XCHAR (obj);
 	  if (IN_TRT_TABLE_DOMAIN (c))
-	    obj = make_char (inword ? DOWNCASE (buf, c) : UPCASE1 (buf, c));
+	    {
+	      if (inword)
+		obj = make_char (DOWNCASE (buf, c));
+	      else if (!UPPERCASEP (buf, c))
+		obj = make_char (UPCASE1 (buf, c));
+	    }
 	  return obj;
 	}
       if (STRINGP (obj))