diff options
-rw-r--r-- | games/hack/Makefile | 8 | ||||
-rw-r--r-- | games/hack/hack.main.c | 4 | ||||
-rw-r--r-- | games/hack/hack.options.c | 2 | ||||
-rw-r--r-- | games/hack/hack.termcap.c | 15 | ||||
-rw-r--r-- | games/hack/hack.u_init.c | 2 | ||||
-rw-r--r-- | games/hack/hack.unix.c | 14 |
6 files changed, 27 insertions, 18 deletions
diff --git a/games/hack/Makefile b/games/hack/Makefile index 89c2690..2ab7d77 100644 --- a/games/hack/Makefile +++ b/games/hack/Makefile @@ -35,13 +35,13 @@ makedefs: makedefs.c ${CC} ${CFLAGS} -o ${.TARGET} ${.CURDIR}/${.PREFIX}.c beforeinstall: - ${INSTALL} -c -o ${BINOWN} -g ${BINGRP} -m 664 /dev/null \ + ${INSTALL} -c -o bin -g bin -m ${NOBINMODE} /dev/null \ ${DESTDIR}/var/games/hackdir/perm - ${INSTALL} -c -o ${BINOWN} -g ${BINGRP} -m 664 /dev/null \ + ${INSTALL} -c -o bin -g ${BINGRP} -m 464 /dev/null \ ${DESTDIR}/var/games/hackdir/record - ${INSTALL} -c -o ${BINOWN} -g ${BINGRP} -m 660 ${.CURDIR}/rumors \ + ${INSTALL} -c -o bin -g ${BINGRP} -m 440 ${.CURDIR}/rumors \ ${DESTDIR}/var/games/hackdir/rumors - ${INSTALL} -c -o ${BINOWN} -g ${BINGRP} -m ${NOBINMODE} \ + ${INSTALL} -c -o bin -g bin -m ${NOBINMODE} \ ${.CURDIR}/help ${.CURDIR}/hh ${.CURDIR}/data \ ${DESTDIR}/var/games/hackdir rm -f ${DESTDIR}/var/games/hackdir/bones* \ diff --git a/games/hack/hack.main.c b/games/hack/hack.main.c index fa66e27..956b163 100644 --- a/games/hack/hack.main.c +++ b/games/hack/hack.main.c @@ -15,7 +15,7 @@ extern char plname[PL_NSIZ], pl_character[PL_CSIZ]; extern struct permonst mons[CMNUM+2]; -extern char genocided[], fut_geno[]; +extern char genocided[60], fut_geno[]; int (*afternmv)(); int (*occupation)(); @@ -234,7 +234,7 @@ char *argv[]; } *gp = 0; } else - (void) strcpy(genocided, sfoo); + (void) strncpy(genocided, sfoo, sizeof(genocided)-1); (void) strcpy(fut_geno, genocided); } } diff --git a/games/hack/hack.options.c b/games/hack/hack.options.c index 477d08b..1fd754a 100644 --- a/games/hack/hack.options.c +++ b/games/hack/hack.options.c @@ -1,6 +1,7 @@ /* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */ /* hack.options.c - version 1.0.3 */ +#include <stdlib.h> #include "config.h" #include "hack.h" extern char *eos(); @@ -8,7 +9,6 @@ extern char *eos(); initoptions() { register char *opts; - extern char *getenv(); flags.time = flags.nonews = flags.notombstone = flags.end_own = flags.standout = flags.nonull = FALSE; diff --git a/games/hack/hack.termcap.c b/games/hack/hack.termcap.c index 6b1f9a6..c24dc83 100644 --- a/games/hack/hack.termcap.c +++ b/games/hack/hack.termcap.c @@ -2,9 +2,11 @@ /* hack.termcap.c - version 1.0.3 */ #include <stdio.h> +#include <termcap.h> +#include <stdlib.h> +#include <unistd.h> #include "config.h" /* for ROWNO and COLNO */ #include "def.flag.h" /* for flags.nonull */ -extern char *tgetstr(), *tgoto(), *getenv(); extern long *alloc(); #ifndef lint @@ -30,10 +32,10 @@ startup() tbufptr = tbuf; if(!(term = getenv("TERM"))) error("Can't get TERM."); - if(!strncmp(term, "5620", 4)) - flags.nonull = 1; /* this should be a termcap flag */ if(tgetent(tptr, term) < 1) error("Unknown terminal type: %s.", term); + if(tgetflag("NP") || tgetflag("nx")) + flags.nonull = 1; if(pc = tgetstr("pc", &tbufptr)) PC = *pc; if(!(BC = tgetstr("bc", &tbufptr))) { @@ -244,7 +246,11 @@ delay_output() { /* cbosgd!cbcephus!pds for SYS V R2 */ /* is this terminfo, or what? */ /* tputs("$<50>", 1, xputc); */ - + else { + (void) fflush(stdout); + usleep(500000); + } +#if 0 else if(ospeed > 0 || ospeed < SIZE(tmspc10)) if(CM) { /* delay by sending cm(here) an appropriate number of times */ register int cmlen = strlen(tgoto(CM, curx-1, cury-1)); @@ -255,6 +261,7 @@ delay_output() { i -= cmlen*tmspc10[ospeed]; } } +#endif } cl_eos() /* free after Robert Viduya */ diff --git a/games/hack/hack.u_init.c b/games/hack/hack.u_init.c index bc06fa5..cb8a97d 100644 --- a/games/hack/hack.u_init.c +++ b/games/hack/hack.u_init.c @@ -4,6 +4,7 @@ #include "hack.h" #include <stdio.h> #include <signal.h> +#include <stdlib.h> #define Strcpy (void) strcpy #define Strcat (void) strcat #define UNDEF_TYP 0 @@ -307,7 +308,6 @@ extern struct obj *mkobj(); #ifdef WIZARD wiz_inv(){ register struct trobj *trop = &Extra_objs[0]; -extern char *getenv(); register char *ep = getenv("INVENT"); register int type; while(ep && *ep) { diff --git a/games/hack/hack.unix.c b/games/hack/hack.unix.c index 88ebdd6..10a8198 100644 --- a/games/hack/hack.unix.c +++ b/games/hack/hack.unix.c @@ -85,12 +85,13 @@ struct stat buf, hbuf; gethdate(name) char *name; { /* old version - for people short of space */ -/* - * register char *np; - * if(stat(name, &hbuf)) - * error("Cannot get status of %s.", - * (np = rindex(name, '/')) ? np+1 : name); - */ +register char *np; + + name = "/usr/games/hide/hack"; + if(stat(name, &hbuf)) + error("Cannot get status of %s.", + (np = rindex(name, '/')) ? np+1 : name); +#if 0 /* version using PATH from: seismo!gregc@ucsf-cgl.ARPA (Greg Couch) */ @@ -124,6 +125,7 @@ char filename[MAXPATHLEN+1]; } error("Cannot get status of %s.", (np = rindex(name, '/')) ? np+1 : name); +#endif } uptodate(fd) { |