summaryrefslogtreecommitdiff
path: root/usr.bin/cvs/file.c
diff options
context:
space:
mode:
authorTobias Stoeckmann <tobias@cvs.openbsd.org>2008-01-31 21:56:35 +0000
committerTobias Stoeckmann <tobias@cvs.openbsd.org>2008-01-31 21:56:35 +0000
commitc2e860bd891b202a40bebf21ca1d243212025dc8 (patch)
treedc24428004421d0d20504dd70c60f871945f88bf /usr.bin/cvs/file.c
parentf6667d691c82185320df4e684c65ef6497d17e89 (diff)
If CVS/Entries.Static exists, don't look for more files in repository.
OK joris@
Diffstat (limited to 'usr.bin/cvs/file.c')
-rw-r--r--usr.bin/cvs/file.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/usr.bin/cvs/file.c b/usr.bin/cvs/file.c
index aef69b652c8..4203733c94e 100644
--- a/usr.bin/cvs/file.c
+++ b/usr.bin/cvs/file.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: file.c,v 1.211 2008/01/31 10:15:05 tobias Exp $ */
+/* $OpenBSD: file.c,v 1.212 2008/01/31 21:56:34 tobias Exp $ */
/*
* Copyright (c) 2006 Joris Vink <joris@openbsd.org>
* Copyright (c) 2004 Jean-Francois Brousseau <jfb@openbsd.org>
@@ -544,8 +544,12 @@ walkrepo:
cvs_get_repository_path(cf->file_path, repo, MAXPATHLEN);
cvs_repository_lock(repo);
- cvs_repository_getdir(repo, cf->file_path, &fl, &dl,
- (cr->flags & CR_RECURSE_DIRS));
+ xsnprintf(fpath, sizeof(fpath), "%s/%s", cf->file_path,
+ CVS_PATH_STATICENTRIES);
+
+ if (stat(fpath, &st) == -1)
+ cvs_repository_getdir(repo, cf->file_path, &fl, &dl,
+ (cr->flags & CR_RECURSE_DIRS));
}
cvs_file_walklist(&fl, cr);