summaryrefslogtreecommitdiff
path: root/usr.bin/cvs/file.c
diff options
context:
space:
mode:
authorTobias Stoeckmann <tobias@cvs.openbsd.org>2008-06-09 17:05:50 +0000
committerTobias Stoeckmann <tobias@cvs.openbsd.org>2008-06-09 17:05:50 +0000
commit474ffe1a566f1d4c1b4edee62378f82cf6231a9f (patch)
treecfc311271de56f12d4564475551561b3e2068031 /usr.bin/cvs/file.c
parent9757da292e5539dcd9f611d9f6563525bca1c332 (diff)
Stop fooling ourselfs by freeing cvs_directory_tag at the wrong position:
cvs_directory_tag is reinitalized every time we enter a new directory, so make it clear by freeing before going into a new directory. discussed with and ok joris
Diffstat (limited to 'usr.bin/cvs/file.c')
-rw-r--r--usr.bin/cvs/file.c14
1 files changed, 7 insertions, 7 deletions
diff --git a/usr.bin/cvs/file.c b/usr.bin/cvs/file.c
index 7a5ab6359bd..eb50da88ad0 100644
--- a/usr.bin/cvs/file.c
+++ b/usr.bin/cvs/file.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: file.c,v 1.240 2008/06/08 13:34:22 tobias Exp $ */
+/* $OpenBSD: file.c,v 1.241 2008/06/09 17:05:49 tobias Exp $ */
/*
* Copyright (c) 2006 Joris Vink <joris@openbsd.org>
* Copyright (c) 2004 Jean-Francois Brousseau <jfb@openbsd.org>
@@ -596,17 +596,17 @@ walkrepo:
(cmdp->cmd_flags & CVS_LOCK_REPO))
cvs_repository_unlock(repo);
- cvs_file_walklist(&dl, cr);
- cvs_file_freelist(&dl);
-
- if (cr->leavedir != NULL)
- cr->leavedir(cf);
-
if (cvs_directory_tag != NULL && cmdp->cmd_flags & CVS_USE_WDIR) {
cvs_write_tagfile(cf->file_path, cvs_directory_tag, NULL);
xfree(cvs_directory_tag);
cvs_directory_tag = NULL;
}
+
+ cvs_file_walklist(&dl, cr);
+ cvs_file_freelist(&dl);
+
+ if (cr->leavedir != NULL)
+ cr->leavedir(cf);
}
void