=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/cvs/file.c,v retrieving revision 1.47 retrieving revision 1.48 diff -c -r1.47 -r1.48 *** src/usr.bin/cvs/file.c 2005/01/03 22:53:06 1.47 --- src/usr.bin/cvs/file.c 2005/01/06 20:15:16 1.48 *************** *** 1,4 **** ! /* $OpenBSD: file.c,v 1.47 2005/01/03 22:53:06 jfb Exp $ */ /* * Copyright (c) 2004 Jean-Francois Brousseau * All rights reserved. --- 1,4 ---- ! /* $OpenBSD: file.c,v 1.48 2005/01/06 20:15:16 jfb Exp $ */ /* * Copyright (c) 2004 Jean-Francois Brousseau * All rights reserved. *************** *** 557,567 **** cvs_file_getpath(cf, fpath, sizeof(fpath)); ! if (cf->cf_cvstat != CVS_FST_UNKNOWN) { ! cdp->cd_root = cvsroot_get(fpath); ! if (cdp->cd_root == NULL) ! return (-1); if (flags & CF_MKADMIN) cvs_mkadmin(cf, 0755); --- 557,567 ---- cvs_file_getpath(cf, fpath, sizeof(fpath)); ! cdp->cd_root = cvsroot_get(fpath); ! if (cdp->cd_root == NULL) ! return (-1); + if (cf->cf_cvstat != CVS_FST_UNKNOWN) { if (flags & CF_MKADMIN) cvs_mkadmin(cf, 0755); *************** *** 581,587 **** } } ! if (!(flags & CF_RECURSE) || (cf->cf_cvstat == CVS_FST_UNKNOWN)) return (0); fd = open(fpath, O_RDONLY); --- 581,588 ---- } } ! if (!(flags & CF_RECURSE) || ! ((flags & CF_KNOWN) && (cf->cf_cvstat == CVS_FST_UNKNOWN))) return (0); fd = open(fpath, O_RDONLY);