=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/cvs/cvs.c,v retrieving revision 1.109 retrieving revision 1.110 diff -u -r1.109 -r1.110 --- src/usr.bin/cvs/cvs.c 2006/11/14 15:39:41 1.109 +++ src/usr.bin/cvs/cvs.c 2006/11/28 13:31:19 1.110 @@ -1,4 +1,4 @@ -/* $OpenBSD: cvs.c,v 1.109 2006/11/14 15:39:41 xsa Exp $ */ +/* $OpenBSD: cvs.c,v 1.110 2006/11/28 13:31:19 xsa Exp $ */ /* * Copyright (c) 2006 Joris Vink * Copyright (c) 2004 Jean-Francois Brousseau @@ -255,8 +255,10 @@ return (0); } - i = snprintf(fpath, sizeof(fpath), "%s/%s", current_cvsroot->cr_dir, - CVS_PATH_ROOT); + if (cvs_path_cat(current_cvsroot->cr_dir, CVS_PATH_ROOT, + fpath, sizeof(fpath)) >= sizeof(fpath)) + fatal("main: truncation"); + if (stat(fpath, &st) == -1 && cvs_cmdop != CVS_OP_INIT) { if (errno == ENOENT) fatal("repository '%s' does not exist",