atatat [Wed, 15 Aug 2001 17:25:42 +0000 (17:25 +0000)]
Change -a to mean all files, as opposed to just a few more files.
Modify the regex handling so that we can match fortunes in rot13'ed
databases (rot13 the pattern and maintain a second compiled pattern)
and rot13 the rot13'ed fortune before output.
Move the rot13 code to a function since it's now used in three places
instead of just one.
Initialize posfile in one place since it appears to get used without
being initialized when using debugging.
Make a *slight* improvement to the random seeding by squaring the pid
and then xor'ing against the current time, since just xor'ing the time
with the pid will not change if they both advance by one from "odd" to
"even".
wiz [Thu, 9 Aug 2001 13:02:49 +0000 (13:02 +0000)]
Fix for FreeBSD/13278, from FreeBSD:
When a game ends that makes the top 10, the function insert_score in
score.c is called to make the new score file. But the case for KFIRE
(killed by fire) incorrectly uses strcpy instead of strcat (all the
other cases use strcat). This puts the string in the wrong place and
corrupts the score file.
christos [Mon, 4 Jun 2001 21:21:42 +0000 (21:21 +0000)]
Overhaul error handling and reporting for regular expressions.
Provide a RE_OK() macro that tests if the current compiled pattern
works and a RE_ERROR() macro that prints what went wrong as well
as the particular RE implementation can handle.
jsm [Sun, 25 Mar 2001 20:43:58 +0000 (20:43 +0000)]
Make mostly gcc -W clean, and other cleanup:
Use const.
Add __noreturn__ attributes.
Add a __format__ attribute.
Add __unused__ attributes.
Use symbolic constants for open() and lseek().
Declare types of all function parameters; convert some function
definitions to ISO C form.
Ensure standard file descriptors are open on startup.
Check for errors writing output of makedefs.
Avoid duplicate definitions of variables.
lukem [Tue, 9 Jan 2001 23:49:54 +0000 (23:49 +0000)]
- openlog "huntd" instead of "HUNT"
- consistently log non-critical errors at LOG_WARNING not LOG_ERR
- consistently use positive numbers for exit() and _exit()
- one warning was using printf() instead of syslog()
jwise [Thu, 4 Jan 2001 03:51:23 +0000 (03:51 +0000)]
More rationalization of include files:
a.) Don't include a zillion system headers from "extern.h" (actually, don't
include any).
b.) Break a global jmp_buf variable into a new file, so <setjmp.h> doesn't
have to be pulled in everywhere (it's only used in two places).
The (one line) new file is (c) TNF with a three-clause license, FW(L)IW.
jwise [Thu, 4 Jan 2001 03:21:16 +0000 (03:21 +0000)]
Rationalize inclusion of header files: cut down on `include everything
everywhere' a little (more to go), and as per KNF, local includes after
system includes.
In cypher(), don't attempt to make sense of words other than VERBs or
KNIFE when a verb is required. Add AUXVERB for "make", "move",
"climb" (as in "make love", "climb up") and ignore AUXVERB as a verb,
going on to the next word, instead of treating these words as
adjectives. When creating new verbs from "put on", "put down", "take
off", mark them as type VERB. Mostly from Paul Janzen
<pjanzen@foatdi.harvard.edu>.
Add OBJ_AN flag to objflags so as to use "a" or "an" appropriately in
messages; avoids "a amulet", "a Elf". Define and use macros to use
"a", "an", "the", "is", "are" appropriately. Partly based on OpenBSD.