=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/mg/cinfo.c,v retrieving revision 1.8 retrieving revision 1.9 diff -u -r1.8 -r1.9 --- src/usr.bin/mg/cinfo.c 2002/03/11 13:02:56 1.8 +++ src/usr.bin/mg/cinfo.c 2002/05/06 19:22:38 1.9 @@ -1,4 +1,4 @@ -/* $OpenBSD: cinfo.c,v 1.8 2002/03/11 13:02:56 vincent Exp $ */ +/* $OpenBSD: cinfo.c,v 1.9 2002/05/06 19:22:38 deraadt Exp $ */ /* * Character class tables. @@ -93,6 +93,7 @@ keyname(char *cp, size_t len, int k) { const char *np; + size_t copied; if (k < 0) k = CHARMASK(k);/* sign extended char */ @@ -143,5 +144,8 @@ *cp = '\0'; return cp; } - return cp + strlcpy(cp, np, len); + copied = strlcpy(cp, np, len); + if (copied >= len) + copied = len - 1; + return cp + copied; }