=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/cvs/server.c,v retrieving revision 1.68 retrieving revision 1.69 diff -u -r1.68 -r1.69 --- src/usr.bin/cvs/server.c 2007/09/02 12:13:00 1.68 +++ src/usr.bin/cvs/server.c 2007/09/02 12:16:24 1.69 @@ -1,4 +1,4 @@ -/* $OpenBSD: server.c,v 1.68 2007/09/02 12:13:00 tobias Exp $ */ +/* $OpenBSD: server.c,v 1.69 2007/09/02 12:16:24 tobias Exp $ */ /* * Copyright (c) 2006 Joris Vink * @@ -572,8 +572,14 @@ void cvs_server_init(char *data) { - if (chdir(server_currentdir) == -1) - fatal("cvs_server_init: %s", strerror(errno)); + if (data == NULL) + fatal("Missing argument for init"); + + if (current_cvsroot != NULL) + fatal("Root in combination with init is not supported"); + + if ((current_cvsroot = cvsroot_get(data)) == NULL) + fatal("Invalid argument for init"); cvs_cmdop = CVS_OP_INIT; cvs_init(server_argc, server_argv);