This is patch14 to PennMUSH 1.7.6. After applying this patch, you will have version 1.7.6p14 To apply this patch, save it to a file in your top-level MUSH directory, and do the following: patch -p1 < 1.7.6-patch14 make install If you use GNU patch 2.2, you probably want the above to be 'patch -b -p1', not just 'patch -p1'. Unix (or cygwin) users need not worry about failed hunks in src/switchinc.c, hdrs/switches.h, hdrs/cmds.h, or hdrs/funs.h. These files are automatically rebuilt on compile. On the off chance they appear not to be, simply rm them and re-run make. Then @shutdown and restart your MUSH. - Alan/Javelin In this patch: Fixes: * Fix to help @search2 by LeeLaLimaLLama@M*U*S*H. * The max file descriptor could get stomped in some cases. [SW] * Powers and toggles on destroyed objects are reset, as they caused anomalous lsearch/haspower behavior. Report by Mordie@M*U*S*H. * Changing channel privs and loading channels with objects no longer permitted could cause crashes. Report by Septimus@SW RP Forum. Prereq: 1.7.6p13 *** 1_7_6.174/Patchlevel Mon, 11 Aug 2003 16:41:37 -0500 dunemush (pennmush/5_Patchlevel 1.17.1.11.1.1.1.13 600) --- 1_7_6.178(w)/Patchlevel Tue, 23 Sep 2003 20:15:53 -0500 dunemush (pennmush/5_Patchlevel 1.17.1.11.1.1.1.14 600) *************** *** 1,2 **** Do not edit this file. It is maintained by the official PennMUSH patches. ! This is PennMUSH 1.7.6p13 --- 1,2 ---- Do not edit this file. It is maintained by the official PennMUSH patches. ! This is PennMUSH 1.7.6p14 *** 1_7_6.174/CHANGES.176 Thu, 14 Aug 2003 09:48:21 -0500 dunemush (pennmush/g/17_CHANGES 1.10.1.6.1.2.1.2.1.1.1.1.1.2.1.1.1.1.1.1.1.1.1.1.1.3.1.1.1.1.1.9.1.1.1.1.1.2.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.2.1.1.1.1.1.2.1.1.1.1.1.1.1.1.1.1.1.2.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.2.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.2.1.1.1.1.1.1.1.2.1.1.1.1.1.1.1.1.1.1.1.2.1.1.1.1 600) --- 1_7_6.178(w)/CHANGES.176 Wed, 24 Sep 2003 11:52:32 -0500 dunemush (pennmush/g/17_CHANGES 1.10.1.6.1.2.1.2.1.1.1.1.1.2.1.1.1.1.1.1.1.1.1.1.1.3.1.1.1.1.1.9.1.1.1.1.1.2.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.2.1.1.1.1.1.2.1.1.1.1.1.1.1.1.1.1.1.2.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.2.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.2.1.1.1.1.1.1.1.2.1.1.1.1.1.1.1.1.1.1.1.2.1.1.1.1.1.2.1.1.1.1 600) *************** *** 18,23 **** --- 18,34 ---- ========================================================================== + Version 1.7.6 patchlevel 14 September 23, 2003 + + Fixes: + * Fix to help @search2 by LeeLaLimaLLama@M*U*S*H. + * The max file descriptor could get stomped in some cases. [SW] + * Powers and toggles on destroyed objects are reset, as they + caused anomalous lsearch/haspower behavior. Report by Mordie@M*U*S*H. + * Changing channel privs and loading channels with objects no longer + permitted could cause crashes. Report by Septimus@SW RP Forum. + + Version 1.7.6 patchlevel 13 August 11, 2003 Fixes: *** 1_7_6.174/game/txt/hlp/pennvOLD.hlp Wed, 02 Jul 2003 14:18:27 -0500 dunemush (pennmush/g/30_pennvOLD.h 1.1.1.1.1.1.1.1.1.1.1.1 660) --- 1_7_6.178(w)/game/txt/hlp/pennvOLD.hlp Wed, 24 Sep 2003 11:52:46 -0500 dunemush (pennmush/g/30_pennvOLD.h 1.1.1.1.1.1.1.1.1.1.1.1.1.1 660) *************** *** 4417,4423 **** For information on a specific patchlevel of one of the versions listed, type 'help p'. For example, 'help 1.7.2p3' ! 1.7.6: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13 1.7.5: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 1.7.4: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20 --- 4417,4423 ---- For information on a specific patchlevel of one of the versions listed, type 'help p'. For example, 'help 1.7.2p3' ! 1.7.6: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 1.7.5: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 1.7.4: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20 *** 1_7_6.174/game/txt/hlp/pennv176.hlp Thu, 14 Aug 2003 09:48:21 -0500 dunemush (pennmush/g/33_pennv176.h 1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.2.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.2.1.1.1.1.1.1.1.1.1.2.1.1.1.1 660) --- 1_7_6.178(w)/game/txt/hlp/pennv176.hlp Wed, 24 Sep 2003 11:52:46 -0500 dunemush (pennmush/g/33_pennv176.h 1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.2.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.2.1.1.1.1.1.1.1.1.1.2.1.1.1.1.1.2.1.1.1.1 660) *************** *** 1,4 **** ! & 1.7.6p13 & changes This is a list of changes in this patchlevel which are probably of interest to players. More information about new commands and functions --- 1,4 ---- ! & 1.7.6p14 & changes This is a list of changes in this patchlevel which are probably of interest to players. More information about new commands and functions *************** *** 11,16 **** --- 11,28 ---- A list of the patchlevels associated with each release can be read in 'help patchlevels'. + Version 1.7.6 patchlevel 14 September 23, 2003 + + Fixes: + * Fix to help @search2 by LeeLaLimaLLama@M*U*S*H. + * The max file descriptor could get stomped in some cases. [SW] + * Powers and toggles on destroyed objects are reset, as they + caused anomalous lsearch/haspower behavior. Report by Mordie@M*U*S*H. + * Changing channel privs and loading channels with objects no longer + permitted could cause crashes. Report by Septimus@SW RP Forum. + + + & 1.7.6p13 Version 1.7.6 patchlevel 13 August 11, 2003 Fixes: *** 1_7_6.174/game/txt/hlp/penncmd.hlp Mon, 05 May 2003 20:38:37 -0500 dunemush (pennmush/18_penncmd.hl 1.2.1.1.1.47.1.1.1.1.1.3.1.4.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.2.1.10.1.1.1.1.1.1.1.1.1.1 600) --- 1_7_6.178(w)/game/txt/hlp/penncmd.hlp Mon, 25 Aug 2003 11:48:04 -0500 dunemush (pennmush/18_penncmd.hl 1.2.1.1.1.47.1.1.1.1.1.3.1.4.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.2.1.10.1.1.1.1.1.1.1.1.1.1.1.1 600) *************** *** 2536,2541 **** --- 2536,2542 ---- 'help @search2' for more. & @search2 If =EXITS, OBJECTS, ROOMS, or PLAYERS, only objects of that type + will be listed. If =FLAGS, only objects with the list of flags specified by will be listed. Flag names should be specified by single *** 1_7_6.174/src/extchat.c Wed, 05 Mar 2003 18:07:52 -0600 dunemush (pennmush/c/23_extchat.c 1.1.1.1.1.1.1.1.1.2.1.1.1.3.1.1.1.5.1.1.1.1.1.5.1.2.1.3.1.3.1.1.1.4.1.2.1.6.1.2.1.1.2.4.2.9.1.2.1.2.1.3.1.2.1.2.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.3.1.2.1.1.2.1.1.2.1.1.1.1.1.1 660) --- 1_7_6.178(w)/src/extchat.c Mon, 29 Sep 2003 17:01:39 -0500 dunemush (pennmush/c/23_extchat.c 1.1.1.1.1.1.1.1.1.2.1.1.1.3.1.1.1.5.1.1.1.1.1.5.1.2.1.3.1.3.1.1.1.4.1.2.1.6.1.2.1.1.2.4.2.9.1.2.1.2.1.3.1.2.1.2.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.3.1.2.1.1.2.1.1.2.1.1.1.1.1.1.1.1 660) *************** *** 268,277 **** * successful, 0 otherwise. */ static int ! load_channel(fp, ch) ! FILE *fp; ! CHAN *ch; { strcpy(ChanName(ch), getstring_noalloc(fp)); if (feof(fp)) return 0; --- 268,276 ---- * successful, 0 otherwise. */ static int ! load_channel(FILE * fp, CHAN *ch) { + int ret = 1; strcpy(ChanName(ch), getstring_noalloc(fp)); if (feof(fp)) return 0; *************** *** 288,303 **** ChanNumUsers(ch) = getref(fp); ChanMaxUsers(ch) = ChanNumUsers(ch); ChanUsers(ch) = NULL; ! if (ChanNumUsers(ch) > 0) ! return (ChanNumUsers(ch) = load_chanusers(fp, ch)); return 1; } /* Load the *channel's user list. Return number of users on success, or 0 */ static int ! load_chanusers(fp, ch) ! FILE *fp; ! CHAN *ch; { int i, num = 0; CHANUSER *user; --- 287,304 ---- ChanNumUsers(ch) = getref(fp); ChanMaxUsers(ch) = ChanNumUsers(ch); ChanUsers(ch) = NULL; ! if (ChanNumUsers(ch) > 0) { ! ret = load_chanusers(fp, ch); ! if (ret < 0) ! return 0; ! ChanNumUsers(ch) = ret; ! } return 1; } /* Load the *channel's user list. Return number of users on success, or 0 */ static int ! load_chanusers(FILE * fp, CHAN *ch) { int i, num = 0; CHANUSER *user; *** 1_7_6.174/src/destroy.c Tue, 13 May 2003 12:32:06 -0500 dunemush (pennmush/c/24_destroy.c 1.24.2.2.1.3.1.1.1.1.1.1.1.4.1.1.1.1 660) --- 1_7_6.178(w)/src/destroy.c Mon, 29 Sep 2003 17:01:39 -0500 dunemush (pennmush/c/24_destroy.c 1.24.2.2.1.3.1.1.1.1.1.1.1.4.1.1.1.1.1.1 660) *************** *** 714,719 **** --- 714,720 ---- } Flags(thing) = TYPE_GARBAGE; + Toggles(thing) = Powers(thing) = 0; Location(thing) = NOTHING; set_name(thing, "Garbage"); Exits(thing) = NOTHING; *** 1_7_6.174/src/bsd.c Tue, 17 Jun 2003 14:13:35 -0500 dunemush (pennmush/c/38_bsd.c 1.58.1.11.1.2.1.5.1.7.1.14.1.13.1.9.1.4.1.2.1.12.1.1.1.1.1.2.1.1.1.13.1.1.1.1.1.1.1.1.1.1.1.3.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.3.1.8.2.1.1.1.1.1.1.1.1.2.1.1.1.1.1.1.1.1.1.1.1.1 660) --- 1_7_6.178(w)/src/bsd.c Mon, 29 Sep 2003 17:01:38 -0500 dunemush (pennmush/c/38_bsd.c 1.58.1.11.1.2.1.5.1.7.1.14.1.13.1.9.1.4.1.2.1.12.1.1.1.1.1.2.1.1.1.13.1.1.1.1.1.1.1.1.1.1.1.3.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.3.1.8.2.1.1.1.1.1.1.1.1.2.1.1.1.1.1.1.1.1.1.1.1.1.1.1 660) *************** *** 2002,2008 **** #endif if (!restarting) { sock = make_socket(port, NULL, NULL, MUSH_IP_ADDR); ! maxd = sock + 1; } our_gettimeofday(&last_slice); --- 2002,2009 ---- #endif if (!restarting) { sock = make_socket(port, NULL, NULL, MUSH_IP_ADDR); ! if (sock >= maxd) ! maxd = sock + 1; } our_gettimeofday(&last_slice); *************** *** 5543,5549 **** } sock = getref(f); ! maxd = getref(f); while ((val = getref(f)) != 0) { ndescriptors++; --- 5544,5552 ---- } sock = getref(f); ! val = getref(f); ! if (val > maxd) ! maxd = val; while ((val = getref(f)) != 0) { ndescriptors++; *** 1_7_6.174/hdrs/version.h Mon, 11 Aug 2003 16:41:37 -0500 dunemush (pennmush/c/47_version.h 1.32.1.2.1.7.1.9.1.1.1.17.1.2.1.12 660) --- 1_7_6.178(w)/hdrs/version.h Mon, 29 Sep 2003 17:01:43 -0500 dunemush (pennmush/c/47_version.h 1.32.1.2.1.7.1.9.1.1.1.17.1.2.1.13 660) *************** *** 1,2 **** ! #define VERSION "PennMUSH version 1.7.6 patchlevel 13 [08/11/2003]" ! #define SHORTVN "PennMUSH 1.7.6p13" --- 1,2 ---- ! #define VERSION "PennMUSH version 1.7.6 patchlevel 14 [09/23/2003]" ! #define SHORTVN "PennMUSH 1.7.6p14"