(empfile, teldir, motdfil, downfil, disablefil, telfil, annfil)

(banfil, authfil, timestampfil): Make file names relative to DATADIR.
(main): emp_server and files change to the data directory.  fairland
has to write newcap_script to the initial current directory, so it
keeps it and makes file names relative to DATADIR absolute.
(fixup_files): Nothing to do, remove.  This fixes the following bug:
fixup_files() formed file names by appending ep->name instead of the
base name of ep->file to datadir.  Thus, fixup_files() changed file
names even when datadir had the compiled-in value.  When emp_config()
couldn't open econfig, it failed to call fixup_files(), and different
file names got used.  Note that with this revision the file names
revert to the names used before fixup_files() was introduced.  Closes
#1146080.
(print_config): Printing file names as comments is not really useful,
remove.
(otherfiles, ofiles): Unused, remove.
(emp_config, main): Previously, pconfig had to call emp_config() even
when it didn't want to read econfig, just to run fixup_files().  This
is no longer necessary.  Simplify.
This commit is contained in:
Markus Armbruster 2005-03-09 18:44:50 +00:00
parent 1583d0c6a2
commit 29da4b6cf4
8 changed files with 49 additions and 92 deletions

View file

@ -33,10 +33,6 @@
* Steve McClure, 1998
*/
#if defined(aix) || defined(linux) || defined(solaris)
#include <unistd.h>
#endif /* aix or linux */
#include <sys/types.h>
#include <fcntl.h>
#if !defined(_WIN32)
@ -46,6 +42,7 @@
#include <direct.h>
#include "../lib/gen/getopt.h"
#endif
#include <errno.h>
#include <stdarg.h>
#include <stdio.h>
@ -112,6 +109,11 @@ main(int argc, char *argv[])
printf("Can't make game directory\n");
exit(1);
}
if (chdir(datadir)) {
fprintf(stderr, "Can't chdir to %s (%s)\n", datadir, strerror(errno));
exit(EXIT_FAILURE);
}
if (!force) {
printf("WARNING: this blasts the existing game in %s (if any)\n",
datadir);