diff options
Diffstat (limited to 'source/y/bsd-games/patches/0007-Unsorted-Debian-patches.patch')
-rw-r--r-- | source/y/bsd-games/patches/0007-Unsorted-Debian-patches.patch | 552 |
1 files changed, 552 insertions, 0 deletions
diff --git a/source/y/bsd-games/patches/0007-Unsorted-Debian-patches.patch b/source/y/bsd-games/patches/0007-Unsorted-Debian-patches.patch new file mode 100644 index 00000000..a31120a9 --- /dev/null +++ b/source/y/bsd-games/patches/0007-Unsorted-Debian-patches.patch @@ -0,0 +1,552 @@ +From: Tobias Quathamer <toddy@debian.org> +Date: Mon, 26 Mar 2012 10:07:17 +0200 +Subject: Unsorted Debian patches + +--- + adventure/crc.c | 4 +++- + arithmetic/arithmetic.6 | 2 +- + backgammon/backgammon/move.c | 3 +++ + backgammon/common_source/allow.c | 4 +++- + backgammon/teachgammon/ttext1.c | 2 +- + backgammon/teachgammon/ttext2.c | 2 +- + dab/gamescreen.h | 6 ++--- + dm/dm.c | 6 ++--- + fish/Makefrag | 8 ++++--- + fish/fish.6 | 4 ++-- + gomoku/gomoku.6 | 2 +- + hack/Makefrag | 3 ++- + hack/config.h | 15 ++++++++----- + hunt/hunt/hunt.6.in | 2 +- + hunt/hunt/hunt.c | 6 +++-- + hunt/hunt/playit.c | 4 ++-- + number/number.c | 47 ++++++++++++++++++++++++++-------------- + sail/pl_main.c | 2 +- + tests/number.-0.1 | 2 +- + tetris/scores.c | 17 +++++++++------ + trek/setup.c | 5 ++++- + 21 files changed, 92 insertions(+), 54 deletions(-) + +diff --git a/adventure/crc.c b/adventure/crc.c +index 66504f1..c6ee5f1 100644 +--- a/adventure/crc.c ++++ b/adventure/crc.c +@@ -42,6 +42,8 @@ __RCSID("$NetBSD: crc.c,v 1.8 2003/08/07 09:36:50 agc Exp $"); + #endif + #endif /* not lint */ + ++#include <limits.h> ++ + #include "extern.h" + + const unsigned long crctab[] = { +@@ -125,7 +127,7 @@ crc(ptr, nr) /* Process nr bytes at a time; ptr points to them */ + + while (nr > 0) + for (p = ptr; nr--; ++p) { +- if (!(i = crcval >> 24 ^ *p)) { ++ if (!(i = crcval >> (sizeof(crcval) * CHAR_BIT - 8) ^ *p)) { + i = step++; + if (step >= sizeof(crctab) / sizeof(crctab[0])) + step = 0; +diff --git a/arithmetic/arithmetic.6 b/arithmetic/arithmetic.6 +index b8d4d8f..bc41bca 100644 +--- a/arithmetic/arithmetic.6 ++++ b/arithmetic/arithmetic.6 +@@ -79,7 +79,7 @@ divide by or subtract will be between 0 and + .Nm + will not ask you to divide by 0.) + The default +-.I range ++.It range + is 10. + .El + .Pp +diff --git a/backgammon/backgammon/move.c b/backgammon/backgammon/move.c +index 9fd81f1..027cab5 100644 +--- a/backgammon/backgammon/move.c ++++ b/backgammon/backgammon/move.c +@@ -152,6 +152,9 @@ move(okay) + trymove(0, 0); + pickmove(); + ++ if (d0) ++ swap; ++ + /* print move */ + writel(" and moves "); + for (i = 0; i < mvlim; i++) { +diff --git a/backgammon/common_source/allow.c b/backgammon/common_source/allow.c +index f6bae78..8189f07 100644 +--- a/backgammon/common_source/allow.c ++++ b/backgammon/common_source/allow.c +@@ -83,8 +83,10 @@ movallow() + p[i--] = bar; + if (p[i] != bar) + continue; +- else ++ else if (d0) + break; ++ swap; ++ continue; + } + if (d0 || m == 4) + break; +diff --git a/backgammon/teachgammon/ttext1.c b/backgammon/teachgammon/ttext1.c +index 82db223..73ea6ee 100644 +--- a/backgammon/teachgammon/ttext1.c ++++ b/backgammon/teachgammon/ttext1.c +@@ -94,7 +94,7 @@ const char *const intro2[] = { + "\n Although not indicated on the board, the players' homes are", + "located just to the right of the board. A player's men are placed", + "there when they are removed from the board. The board you just", +- "saw was in it's initial position. All games start with the board", ++ "saw was in its initial position. All games start with the board", + "looking like this. Notice that red's pieces are represented by the", + "letter 'r' and white's pieces are represented by the letter 'w'.", + "Also, a position may have zero or more pieces on it, e.g. posi-", +diff --git a/backgammon/teachgammon/ttext2.c b/backgammon/teachgammon/ttext2.c +index 5e827d7..eb9a083 100644 +--- a/backgammon/teachgammon/ttext2.c ++++ b/backgammon/teachgammon/ttext2.c +@@ -65,7 +65,7 @@ const char *const stragy[] = { + "points in a row) are difficult to form, many points nestled close-", + "ly together produce a formidable barrier. Also, while it is good", + "to move back men forward, doing so lessens the opportunity for you", +- "to hit men. Finally, remember that once the two player's have", ++ "to hit men. Finally, remember that once the two players have", + "passed each other on the board, there is no chance of either team", + "being hit, so the game reduces to a race off the board. Addi-", + "tional hints on strategy are presented in the practice game.", +diff --git a/dab/gamescreen.h b/dab/gamescreen.h +index ca90cb3..b3db2ea 100644 +--- a/dab/gamescreen.h ++++ b/dab/gamescreen.h +@@ -70,9 +70,9 @@ class GAMESCREEN { + virtual void redraw(void) = 0; // Refresh + virtual int getinput(void) = 0; // Get user input + virtual void bell(void) = 0; // Beep +- virtual void score(size_t p, const PLAYER& p) = 0; // Post current score +- virtual void games(size_t p, const PLAYER& p) = 0; // Post games won +- virtual void total(size_t p, const PLAYER& p) = 0; // Post total score ++ virtual void score(size_t s, const PLAYER& p) = 0; // Post current score ++ virtual void games(size_t s, const PLAYER& p) = 0; // Post games won ++ virtual void total(size_t s, const PLAYER& p) = 0; // Post total score + virtual void ties(const PLAYER& p) = 0; // Post tie games + }; + +diff --git a/dm/dm.c b/dm/dm.c +index c131904..16129d8 100644 +--- a/dm/dm.c ++++ b/dm/dm.c +@@ -134,19 +134,19 @@ read_config() + while (fgets(lbuf, sizeof(lbuf), cfp)) + switch (*lbuf) { + case 'b': /* badtty */ +- if (sscanf(lbuf, "%s%s", f1, f2) != 2 || ++ if (sscanf(lbuf, "%39s%39s", f1, f2) != 2 || + strcasecmp(f1, "badtty")) + break; + c_tty(f2); + break; + case 'g': /* game */ +- if (sscanf(lbuf, "%s%s%s%s%s", ++ if (sscanf(lbuf, "%39s%39s%39s%39s%39s", + f1, f2, f3, f4, f5) != 5 || strcasecmp(f1, "game")) + break; + c_game(f2, f3, f4, f5); + break; + case 't': /* time */ +- if (sscanf(lbuf, "%s%s%s%s", f1, f2, f3, f4) != 4 || ++ if (sscanf(lbuf, "%39s%39s%39s%39s", f1, f2, f3, f4) != 4 || + strcasecmp(f1, "time")) + break; + c_day(f2, f3, f4); +diff --git a/fish/Makefrag b/fish/Makefrag +index 1039af5..1fec493 100644 +--- a/fish/Makefrag ++++ b/fish/Makefrag +@@ -31,7 +31,9 @@ fish_DIRS := $(GAMESDIR) $(MAN6DIR) $(shell dirname $(FISH_INSTRFILE)) + fish_all: fish/fish fish/fish.instr fish/fish.6 + + fish_install: fish_all +- $(INSTALL_BINARY) fish/fish $(INSTALL_PREFIX)$(GAMESDIR)/fish +- $(HIDE_GAME) fish ++ $(INSTALL_BINARY) fish/fish $(INSTALL_PREFIX)$(GAMESDIR)/go-fish ++ $(HIDE_GAME) go-fish + $(INSTALL_DATA) fish/fish.instr $(INSTALL_PREFIX)$(FISH_INSTRFILE) +- $(INSTALL_MANUAL) fish/fish.6 ++ ln -sf fish.6 fish/go-fish.6 # hack for rename ++ $(INSTALL_MANUAL) fish/go-fish.6 ++ rm -f fish/go-fish.6 +diff --git a/fish/fish.6 b/fish/fish.6 +index 398c55f..46eef2b 100644 +--- a/fish/fish.6 ++++ b/fish/fish.6 +@@ -30,10 +30,10 @@ + .\" @(#)fish.6 8.1 (Berkeley) 5/31/93 + .\" + .Dd May 31, 1993 +-.Dt FISH 6 ++.Dt GO-FISH 6 + .Os + .Sh NAME +-.Nm fish ++.Nm go-fish + .Nd play + .Dq Go Fish + .Sh SYNOPSIS +diff --git a/gomoku/gomoku.6 b/gomoku/gomoku.6 +index f78eb0e..024da85 100644 +--- a/gomoku/gomoku.6 ++++ b/gomoku/gomoku.6 +@@ -45,7 +45,7 @@ + .Op Ar inputfile + .Sh DESCRIPTION + .Nm +-is a two player game were the object is to get 5 in a row horizontally, ++is a two player game where the object is to get 5 in a row horizontally, + vertically or diagonally on a 19 by 19 grid. + By convention, black always moves first. + With no arguments, +diff --git a/hack/Makefrag b/hack/Makefrag +index eabbd2a..5807ef0 100644 +--- a/hack/Makefrag ++++ b/hack/Makefrag +@@ -56,7 +56,8 @@ hack_install: hack_all + $(INSTALL_SCORE_GAME) hack/hack $(INSTALL_PREFIX)$(GAMESDIR)/hack + $(HIDE_GAME) hack + $(INSTALL_HACK_DIR) $(INSTALL_PREFIX)$(HACK_DIR) +- set -e; for f in data help hh rumors; do $(INSTALL_DATA) hack/$$f $(INSTALL_PREFIX)$(HACK_DIR)/$$f; done ++ install -d $(INSTALL_PREFIX)/usr/share/games/bsdgames/hack ++ set -e; for f in data help hh rumors; do $(INSTALL_DATA) hack/$$f $(INSTALL_PREFIX)/usr/share/games/bsdgames/hack/$$f; done + $(INSTALL_SCORE_FILE) $(HACK_DIR)/perm + $(INSTALL_SCORE_FILE) $(HACK_DIR)/record + $(INSTALL_MANUAL) hack/hack.6 +diff --git a/hack/config.h b/hack/config.h +index ad3bbcf..03a8b02 100644 +--- a/hack/config.h ++++ b/hack/config.h +@@ -88,13 +88,18 @@ + /* #define PYRAMID_BUG */ /* avoid a bug on the Pyramid */ + /* #define NOWAITINCLUDE */ /* neither <wait.h> nor <sys/wait.h> exists */ + +-#define WIZARD "bruno" /* the person allowed to use the -D option */ ++/* ++ * Debian mods: use root for WIZARD, and move files that are static to ++ * /usr/share/ -- JEH ++ */ ++#define WIZARD "root" /* the person allowed to use the -D option */ ++#define SHAREDIR "/usr/share/games/bsdgames/hack/" + #define RECORD "record"/* the file containing the list of topscorers */ + #define NEWS "news" /* the file containing the latest hack news */ +-#define HELP "help" /* the file containing a description of the commands */ +-#define SHELP "hh" /* abbreviated form of the same */ +-#define RUMORFILE "rumors" /* a file with fortune cookies */ +-#define DATAFILE "data" /* a file giving the meaning of symbols used */ ++#define HELP SHAREDIR "help" /* the file containing a description of the commands */ ++#define SHELP SHAREDIR "hh" /* abbreviated form of the same */ ++#define RUMORFILE SHAREDIR "rumors" /* a file with fortune cookies */ ++#define DATAFILE SHAREDIR "data" /* a file giving the meaning of symbols used */ + #define FMASK 0660 /* file creation mask */ + #define HLOCK "perm" /* an empty file used for locking purposes */ + #define LLOCK "safelock" /* link to previous */ +diff --git a/hunt/hunt/hunt.6.in b/hunt/hunt/hunt.6.in +index 406296e..22e45ec 100644 +--- a/hunt/hunt/hunt.6.in ++++ b/hunt/hunt/hunt.6.in +@@ -387,7 +387,7 @@ how many of player's shots were ducked + how many slime kills player had + .It enemy + how many enemies were killed +-.tI friend ++.It friend + how many friends were killed (self and same team) + .It deaths + how many times player died +diff --git a/hunt/hunt/hunt.c b/hunt/hunt/hunt.c +index 11f4c44..28321bc 100644 +--- a/hunt/hunt/hunt.c ++++ b/hunt/hunt/hunt.c +@@ -394,7 +394,8 @@ broadcast_vec(s, vector) + + vec_cnt = 0; + for (ip = ifp; ip; ip = ip->ifa_next) +- if ((ip->ifa_addr->sa_family == AF_INET) && ++ if (ip->ifa_addr && ++ (ip->ifa_addr->sa_family == AF_INET) && + (ip->ifa_flags & IFF_BROADCAST)) + vec_cnt++; + +@@ -405,7 +406,8 @@ broadcast_vec(s, vector) + + vec_cnt = 0; + for (ip = ifp; ip; ip = ip->ifa_next) +- if ((ip->ifa_addr->sa_family == AF_INET) && ++ if (ip->ifa_addr && ++ (ip->ifa_addr->sa_family == AF_INET) && + (ip->ifa_flags & IFF_BROADCAST)) + memcpy(&(*vector)[vec_cnt++], ip->ifa_broadaddr, + sizeof(struct sockaddr_in)); +diff --git a/hunt/hunt/playit.c b/hunt/hunt/playit.c +index 9acf86e..881a4e7 100644 +--- a/hunt/hunt/playit.c ++++ b/hunt/hunt/playit.c +@@ -114,7 +114,7 @@ playit() + bad_con(); + /* NOTREACHED */ + } +- if (ntohl(version) != (unsigned long)HUNT_VERSION) { ++ if (ntohl(version) != (uint32_t)HUNT_VERSION) { + bad_ver(); + /* NOTREACHED */ + } +@@ -649,7 +649,7 @@ do_message() + bad_con(); + /* NOTREACHED */ + } +- if (ntohl(version) != (unsigned long)HUNT_VERSION) { ++ if (ntohl(version) != (uint32_t)HUNT_VERSION) { + bad_ver(); + /* NOTREACHED */ + } +diff --git a/number/number.c b/number/number.c +index c7559e1..3086a86 100644 +--- a/number/number.c ++++ b/number/number.c +@@ -78,9 +78,9 @@ static const char *const name1[] = { + + void convert(char *); + int main(int, char *[]); +-int number(const char *, int); +-void pfract(int); +-int unit(int, const char *); ++int number(const char *, int, int *); ++void pfract(int, int); ++int unit(int, const char *, int *); + void usage(void) __attribute__((__noreturn__)); + + int lflag; +@@ -131,7 +131,7 @@ void + convert(line) + char *line; + { +- int flen, len, rval; ++ int flen, len, rval, singular; + char *p, *fraction; + + flen = 0; +@@ -174,7 +174,7 @@ badnum: errx(1, "illegal number: %s", line); + --len; + } + +- rval = len > 0 ? unit(len, line) : 0; ++ rval = len > 0 ? unit(len, line, &singular) : 0; + if (fraction != NULL && flen != 0) + for (p = fraction; *p != '\0'; ++p) + if (*p != '0') { +@@ -182,10 +182,10 @@ badnum: errx(1, "illegal number: %s", line); + (void)printf("%sand%s", + lflag ? " " : "", + lflag ? " " : "\n"); +- if (unit(flen, fraction)) { ++ if (unit(flen, fraction, &singular)) { + if (lflag) + (void)printf(" "); +- pfract(flen); ++ pfract(flen, singular); + rval = 1; + } + break; +@@ -197,9 +197,10 @@ badnum: errx(1, "illegal number: %s", line); + } + + int +-unit(len, p) ++unit(len, p, singular) + int len; + const char *p; ++ int *singular; + { + int off, rval; + +@@ -208,7 +209,7 @@ unit(len, p) + if (len % 3) { + off = len % 3; + len -= off; +- if (number(p, off)) { ++ if (number(p, off, singular)) { + rval = 1; + (void)printf(" %s%s", + name3[len / 3], lflag ? " " : ".\n"); +@@ -217,14 +218,16 @@ unit(len, p) + } + for (; len > 3; p += 3) { + len -= 3; +- if (number(p, 3)) { ++ if (number(p, 3, singular)) { + rval = 1; + (void)printf(" %s%s", + name3[len / 3], lflag ? " " : ".\n"); + } + } + } +- if (number(p, len)) { ++ if (number(p, len, singular)) { ++ if (rval) ++ *singular = 0; + if (!lflag) + (void)printf(".\n"); + rval = 1; +@@ -233,17 +236,20 @@ unit(len, p) + } + + int +-number(p, len) ++number(p, len, singular) + const char *p; + int len; ++ int *singular; + { + int val, rval; + + rval = 0; ++ *singular = 1; + switch (len) { + case 3: + if (*p != '0') { + rval = 1; ++ *singular = 0; + (void)printf("%s hundred", name1[*p - '0']); + } + ++p; +@@ -262,33 +268,42 @@ number(p, len) + } + rval = 1; + } ++ if (val != 1) ++ *singular = 0; + break; + case 1: + if (*p != '0') { + rval = 1; + (void)printf("%s", name1[*p - '0']); + } ++ if (*p != '1') ++ *singular = 0; + } + return (rval); + } + + void +-pfract(len) ++pfract(len, singular) + int len; ++ int singular; + { + static const char *const pref[] = { "", "ten-", "hundred-" }; + + switch(len) { + case 1: +- (void)printf("tenths.\n"); ++ (void)printf("tenth"); + break; + case 2: +- (void)printf("hundredths.\n"); ++ (void)printf("hundredth"); + break; + default: +- (void)printf("%s%sths.\n", pref[len % 3], name3[len / 3]); ++ (void)printf("%s%sth", pref[len % 3], name3[len / 3]); + break; + } ++ if (!singular) { ++ printf("s"); ++ } ++ printf(".\n"); + } + + void +diff --git a/sail/pl_main.c b/sail/pl_main.c +index 6183420..b8b26b1 100644 +--- a/sail/pl_main.c ++++ b/sail/pl_main.c +@@ -219,7 +219,7 @@ reprint: + printf("\nInitial broadside %s (grape, chain, round, double): ", + n ? "right" : "left"); + fflush(stdout); +- scanf("%s", buf); ++ scanf("%9s", buf); + switch (*buf) { + case 'g': + load = L_GRAPE; +diff --git a/tests/number.-0.1 b/tests/number.-0.1 +index fea1e89..69c365b 100644 +--- a/tests/number.-0.1 ++++ b/tests/number.-0.1 +@@ -1,3 +1,3 @@ + minus + one. +-tenths. ++tenth. +diff --git a/tetris/scores.c b/tetris/scores.c +index d731e25..c2d36c9 100644 +--- a/tetris/scores.c ++++ b/tetris/scores.c +@@ -335,7 +335,8 @@ checkscores(hs, num) + continue; + } + } +- levelfound[sp->hs_level] = 1; ++ if (sp->hs_level < NLEVELS && sp->hs_level >= 0) ++ levelfound[sp->hs_level] = 1; + i++, sp++; + } + return (num > MAXHISCORES ? MAXHISCORES : num); +@@ -374,11 +375,13 @@ showscores(level) + for (i = MINLEVEL; i < NLEVELS; i++) + levelfound[i] = 0; + for (i = 0, sp = scores; i < nscores; i++, sp++) { +- if (levelfound[sp->hs_level]) +- sp->hs_time = 0; +- else { +- sp->hs_time = 1; +- levelfound[sp->hs_level] = 1; ++ if (sp->hs_level < NLEVELS && sp->hs_level >= 0) { ++ if (levelfound[sp->hs_level]) ++ sp->hs_time = 0; ++ else { ++ sp->hs_time = 1; ++ levelfound[sp->hs_level] = 1; ++ } + } + } + +@@ -433,7 +436,7 @@ printem(level, offset, hs, n, me) + continue; + } + sp = &hs[item]; +- (void)sprintf(buf, ++ (void)snprintf(buf, sizeof(buf), + "%3d%c %6d %-11s (%6d on %d)", + item + offset, sp->hs_time ? '*' : ' ', + sp->hs_score * sp->hs_level, +diff --git a/trek/setup.c b/trek/setup.c +index 1f14f27..fab5136 100644 +--- a/trek/setup.c ++++ b/trek/setup.c +@@ -234,11 +234,14 @@ setup() + for (i = 0; i < NQUADS; i++) + for (j = 0; j < NQUADS; j++) + { ++ signed char tmp; + q = &Quad[i][j]; + q->klings = q->bases = 0; + q->scanned = -1; + q->stars = ranf(9) + 1; +- q->holes = ranf(3) - q->stars / 5; ++ tmp = ranf(3) - q->stars / 5; ++ tmp = tmp < 0 ? 0 : tmp; ++ q->holes = tmp; + q->qsystemname = 0; + } + |