If an old port is resurrected to work with current version code, its files can be relocated to the appropriate sys or win folder as required. In the meantime, the burden of upkeep can be avoided for the stuff in the outdated folder for now.
41 lines
1.0 KiB
C
41 lines
1.0 KiB
C
/* NetHack 3.6 macunix.c $NHDT-Date: 1432512797 2015/05/25 00:13:17 $ $NHDT-Branch: master $:$NHDT-Revision: 1.10 $ */
|
|
/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
|
|
/*-Copyright (c) Kenneth Lorber, Kensington, Maryland, 2015. */
|
|
/* NetHack may be freely redistributed. See license for details. */
|
|
|
|
/* This file collects some Unix dependencies */
|
|
|
|
#include "hack.h"
|
|
|
|
void
|
|
regularize(char *s)
|
|
{
|
|
register char *lp;
|
|
|
|
for (lp = s; *lp; lp++) {
|
|
if (*lp == '.' || *lp == ':')
|
|
*lp = '_';
|
|
}
|
|
}
|
|
|
|
void
|
|
getlock(void)
|
|
{
|
|
int fd;
|
|
int pid = getpid(); /* Process ID */
|
|
|
|
Sprintf(g.lock, "%d%s", getuid(), g.plname);
|
|
set_levelfile_name(g.lock, 0);
|
|
|
|
if ((fd = open(g.lock, O_RDWR | O_EXCL | O_CREAT, LEVL_TYPE)) == -1) {
|
|
raw_printf("Could not lock the game %s.", g.lock);
|
|
panic("Another game in progress?");
|
|
}
|
|
|
|
if (write(fd, (char *) &pid, sizeof(pid)) != sizeof(pid)) {
|
|
raw_printf("Could not lock the game %s.", g.lock);
|
|
panic("Disk locked?");
|
|
}
|
|
close(fd);
|
|
}
|