diff options
author | Joris Vink <joris@cvs.openbsd.org> | 2005-12-03 01:02:10 +0000 |
---|---|---|
committer | Joris Vink <joris@cvs.openbsd.org> | 2005-12-03 01:02:10 +0000 |
commit | ef47fbf93d2302d521921cce5f98a093b4779e9f (patch) | |
tree | 50d76a77cc19c09cea910a3890611cb290e63bab /usr.bin/cvs/resp.c | |
parent | 1c6cd252eaeaeedbd87c69d5843ae9550b20ee91 (diff) |
add very basic support for the following stuff:
- checkout in local mode (example: /cvs)
- update in local and server mode (example: /cvs and user@host:/cvs)
- import in local and server mode (example: /cvs and user@host:/cvs)
what remains to be done:
- not all options are supported yet, and update cannot pick up newly
added files yet. these things are pending and will be commited
real soon.
- checkout only works locally right now.
- fix rcs parsing code so that we don't fucking hog 100% cpu
on really BIG BIG BIG ass trees.
mainly tested by pedro@ and myself, thanks a lot pedro!
"go for it" niallo@
Diffstat (limited to 'usr.bin/cvs/resp.c')
-rw-r--r-- | usr.bin/cvs/resp.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/usr.bin/cvs/resp.c b/usr.bin/cvs/resp.c index 71e7cfa0394..af9c683c929 100644 --- a/usr.bin/cvs/resp.c +++ b/usr.bin/cvs/resp.c @@ -1,4 +1,4 @@ -/* $OpenBSD: resp.c,v 1.62 2005/11/28 08:49:25 xsa Exp $ */ +/* $OpenBSD: resp.c,v 1.63 2005/12/03 01:02:09 joris Exp $ */ /* * Copyright (c) 2004 Jean-Francois Brousseau <jfb@openbsd.org> * All rights reserved. @@ -526,7 +526,7 @@ cvs_resp_newentry(struct cvsroot *root, int type, char *line) ent->ce_mtime = time(&(ent->ce_mtime)); /* replace the current entry with the one we just received */ - (void)cvs_ent_remove(cvs_resp_lastent, ent->ce_name); + (void)cvs_ent_remove(cvs_resp_lastent, ent->ce_name, 0); cvs_ent_add(cvs_resp_lastent, ent); } @@ -674,7 +674,7 @@ cvs_resp_updated(struct cvsroot *root, int type, char *line) if ((type == CVS_RESP_UPDEXIST) || (type == CVS_RESP_UPDATED) || (type == CVS_RESP_MERGED) || (type == CVS_RESP_CREATED)) { - if ((cvs_ent_remove(cvs_resp_lastent, ent->ce_name) < 0) && + if ((cvs_ent_remove(cvs_resp_lastent, ent->ce_name, 0) < 0) && (type != CVS_RESP_CREATED)) { cvs_log(LP_WARN, "failed to remove entry for '%s`", ent->ce_name); @@ -752,7 +752,7 @@ cvs_resp_removed(struct cvsroot *root, int type, char *line) if (resp_check_dir(root, line) < 0) return (-1); - (void)cvs_ent_remove(cvs_resp_lastent, file); + (void)cvs_ent_remove(cvs_resp_lastent, file, 0); if ((type == CVS_RESP_REMOVED) && ((unlink(fpath) == -1) && errno != ENOENT)) { cvs_log(LP_ERRNO, "failed to unlink `%s'", file); |