This is patch12 to PennMUSH 1.7.6. After applying this patch, you will have version 1.7.6p12 To apply this patch, save it to a file in your top-level MUSH directory, and do the following: patch -p1 < 1.7.6-patch12 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: Minor changes: * Users no longer see last connection information when they connect to Guests. Suggested by Jules@M*U*S*H. Fixes: * Potential problem with ambigious names in the information functions fixed. [SW] * The 'chat' config group is no longer displayed when CHAT_SYSTEM isn't defined. Report by Mike Griffiths. [SW] * cygwin install instructions changed to remove obsolete exim version information. Suggested by Cheetah@M*U*S*H. * Objects with user-defined locks had problems with finding built-in locks on the object. Reported by Walker@M*U*S*H. [SW] Prereq: 1.7.6p11 *** 1_7_6.161/Patchlevel Mon, 02 Jun 2003 13:30:26 -0500 dunemush (pennmush/5_Patchlevel 1.17.1.11.1.1.1.11 600) --- 1_7_6.168(w)/Patchlevel Mon, 23 Jun 2003 11:04:03 -0500 dunemush (pennmush/5_Patchlevel 1.17.1.11.1.1.1.12 600) *************** *** 1,2 **** Do not edit this file. It is maintained by the official PennMUSH patches. ! This is PennMUSH 1.7.6p11 --- 1,2 ---- Do not edit this file. It is maintained by the official PennMUSH patches. ! This is PennMUSH 1.7.6p12 *** 1_7_6.161/CHANGES.176 Mon, 02 Jun 2003 13:30:26 -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 600) --- 1_7_6.168(w)/CHANGES.176 Mon, 23 Jun 2003 21:39:53 -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 600) *************** *** 18,23 **** --- 18,39 ---- ========================================================================== + Version 1.7.6 patchlevel 12 June 23, 2003 + + Minor changes: + * Users no longer see last connection information when they + connect to Guests. Suggested by Jules@M*U*S*H. + Fixes: + * Potential problem with ambigious names in the information functions + fixed. [SW] + * The 'chat' config group is no longer displayed when CHAT_SYSTEM + isn't defined. Report by Mike Griffiths. [SW] + * cygwin install instructions changed to remove obsolete exim + version information. Suggested by Cheetah@M*U*S*H. + * Objects with user-defined locks had problems with finding built-in locks + on the object. Reported by Walker@M*U*S*H. [SW] + + Version 1.7.6 patchlevel 11 June 1, 2003 Minor changes: *** 1_7_6.161/game/txt/hlp/pennvOLD.hlp Sat, 31 May 2003 16:17:19 -0500 dunemush (pennmush/g/30_pennvOLD.h 1.1.1.1.1.1.1.1 660) --- 1_7_6.168(w)/game/txt/hlp/pennvOLD.hlp Mon, 23 Jun 2003 21:40:34 -0500 dunemush (pennmush/g/30_pennvOLD.h 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 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 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.161/game/txt/hlp/pennv176.hlp Mon, 02 Jun 2003 14:12:22 -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.1 660) --- 1_7_6.168(w)/game/txt/hlp/pennv176.hlp Mon, 23 Jun 2003 21:40:33 -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 660) *************** *** 1,4 **** ! & 1.7.6p11 & 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.6p12 & 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,33 ---- A list of the patchlevels associated with each release can be read in 'help patchlevels'. + Version 1.7.6 patchlevel 12 June 23, 2003 + + Minor changes: + * Users no longer see last connection information when they + connect to Guests. Suggested by Jules@M*U*S*H. + Fixes: + * Potential problem with ambigious names in the information functions + fixed. [SW] + * The 'chat' config group is no longer displayed when CHAT_SYSTEM + isn't defined. Report by Mike Griffiths. [SW] + * cygwin install instructions changed to remove obsolete exim + version information. Suggested by Cheetah@M*U*S*H. + * Objects with user-defined locks had problems with finding built-in locks + on the object. Reported by Walker@M*U*S*H. [SW] + + + & 1.7.6p11 Version 1.7.6 patchlevel 11 June 1, 2003 Minor changes: *** 1_7_6.161/src/switchinc.c Mon, 02 Jun 2003 14:12:22 -0500 dunemush (pennmush/b/32_switchinc. 1.3.1.2.1.6.1.18.1.2.1.2.2.5.1.4.2.4.1.1.1.2.1.5.1.2.1.5.2.1.1.31.3.4.1.5.1.4.1.1.1.1.1.1.1.2.1.1 660) --- 1_7_6.168(w)/src/switchinc.c Tue, 24 Jun 2003 14:50:16 -0500 dunemush (pennmush/b/32_switchinc. 1.3.1.2.1.6.1.18.1.2.1.2.2.5.1.4.2.4.1.1.1.2.1.5.1.2.1.5.2.1.1.31.3.4.1.5.1.4.1.1.1.1.1.1.1.2.1.2 660) *************** *** 132,136 **** {"WIZARD", SWITCH_WIZARD}, {"YES", SWITCH_YES}, {"ZONE", SWITCH_ZONE}, ! {NULL, 0} }; --- 132,136 ---- {"WIZARD", SWITCH_WIZARD}, {"YES", SWITCH_YES}, {"ZONE", SWITCH_ZONE}, ! {NULL, 0} }; *** 1_7_6.161/src/player.c Thu, 26 Dec 2002 14:20:42 -0600 dunemush (pennmush/b/47_player.c 1.15.1.1.1.1.1.4.1.6.1.1 660) --- 1_7_6.168(w)/src/player.c Tue, 24 Jun 2003 14:50:16 -0500 dunemush (pennmush/b/47_player.c 1.15.1.1.1.1.1.4.1.6.1.1.1.1 660) *************** *** 470,488 **** if (a && (strncmp(uncompress(a->value), s, 10) != 0)) giveto(player, Paycheck(player)); /* tell the player where he last connected from */ ! h = atr_get_noparent(player, "LASTSITE"); ! if (h && a) { ! strcpy(last_place, uncompress(h->value)); ! strcpy(last_time, uncompress(a->value)); ! notify_format(player, T("Last connect was from %s on %s."), ! last_place, last_time); ! } ! /* How about last failed connection */ ! h = atr_get_noparent(player, "LASTFAILED"); ! if (h && a) { ! strcpy(last_place, uncompress(h->value)); ! if (strlen(last_place) > 2) ! notify_format(player, T("Last FAILED connect was from %s."), last_place); } /* if there is no Lastsite, then the player is newly created. * the extra variables are a kludge to work around some weird --- 470,491 ---- if (a && (strncmp(uncompress(a->value), s, 10) != 0)) giveto(player, Paycheck(player)); /* tell the player where he last connected from */ ! if (!Guest(player)) { ! h = atr_get_noparent(player, "LASTSITE"); ! if (h && a) { ! strcpy(last_place, uncompress(h->value)); ! strcpy(last_time, uncompress(a->value)); ! notify_format(player, T("Last connect was from %s on %s."), ! last_place, last_time); ! } ! /* How about last failed connection */ ! h = atr_get_noparent(player, "LASTFAILED"); ! if (h && a) { ! strcpy(last_place, uncompress(h->value)); ! if (strlen(last_place) > 2) ! notify_format(player, T("Last FAILED connect was from %s."), ! last_place); ! } } /* if there is no Lastsite, then the player is newly created. * the extra variables are a kludge to work around some weird *** 1_7_6.161/src/lock.c Fri, 03 Jan 2003 01:01:06 -0600 dunemush (pennmush/c/6_lock.c 1.17.1.13.1.1.1.1 660) --- 1_7_6.168(w)/src/lock.c Tue, 24 Jun 2003 14:50:15 -0500 dunemush (pennmush/c/6_lock.c 1.17.1.13.1.1.1.1.1.1 660) *************** *** 373,379 **** return 0; } t = &Locks(thing); ! while (*t && strcmp(L_TYPE(*t), L_TYPE(ll)) < 0) t = &L_NEXT(*t); L_NEXT(ll) = *t; *t = ll; --- 373,379 ---- return 0; } t = &Locks(thing); ! while (*t && strcasecmp(L_TYPE(*t), L_TYPE(ll)) < 0) t = &L_NEXT(*t); L_NEXT(ll) = *t; *t = ll; *************** *** 416,422 **** ll->flags = flags; } t = &Locks(thing); ! while (*t && strcmp(L_TYPE(*t), L_TYPE(ll)) < 0) t = &L_NEXT(*t); L_NEXT(ll) = *t; *t = ll; --- 416,422 ---- ll->flags = flags; } t = &Locks(thing); ! while (*t && strcasecmp(L_TYPE(*t), L_TYPE(ll)) < 0) t = &L_NEXT(*t); L_NEXT(ll) = *t; *t = ll; *** 1_7_6.161/src/conf.c Wed, 12 Mar 2003 12:28:53 -0600 dunemush (pennmush/c/31_conf.c 1.41.2.3.1.3.1.2.1.15.1.1.1.1.1.1 660) --- 1_7_6.168(w)/src/conf.c Tue, 24 Jun 2003 14:50:11 -0500 dunemush (pennmush/c/31_conf.c 1.41.2.3.1.3.1.2.1.15.1.1.1.1.1.1.1.1 660) *************** *** 455,461 **** --- 455,463 ---- CONFGROUP confgroups[] = { {"attribs", "Options affecting attributes", 0}, + #ifdef CHAT_SYSTEM {"chat", "Chat system options", 0}, + #endif {"cmds", "Options affecting command behavior", 0}, {"compile", "Compile-time options", 0}, {"cosmetic", "Cosmetic options", 0}, *** 1_7_6.161/src/bsd.c Sat, 31 May 2003 16:30:52 -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 660) --- 1_7_6.168(w)/src/bsd.c Tue, 24 Jun 2003 14:50:10 -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) *************** *** 4905,4911 **** target = match_result(executor, args[0], TYPE_PLAYER, MAT_ABSOLUTE | MAT_PLAYER | MAT_ME); } ! if ((target == NOTHING) || !Connected(target)) { safe_str("#-1", buff, bp); return; } --- 4905,4911 ---- target = match_result(executor, args[0], TYPE_PLAYER, MAT_ABSOLUTE | MAT_PLAYER | MAT_ME); } ! if (!GoodObject(target) || !Connected(target)) { safe_str("#-1", buff, bp); return; } *************** *** 4951,4957 **** MAT_ABSOLUTE | MAT_PLAYER | MAT_ME); } /* non-connected players return error #-1 */ ! if ((target == NOTHING) || !Connected(target)) { safe_str(T("#-1 NOT CONNECTED"), buff, bp); return; } --- 4951,4957 ---- MAT_ABSOLUTE | MAT_PLAYER | MAT_ME); } /* non-connected players return error #-1 */ ! if (!GoodObject(target) || !Connected(target)) { safe_str(T("#-1 NOT CONNECTED"), buff, bp); return; } *************** *** 4989,4995 **** MAT_ABSOLUTE | MAT_PLAYER | MAT_ME); } /* non-connected players return error -1 */ ! if ((target == NOTHING) || !Connected(target)) { safe_str("-1", buff, bp); return; } --- 4989,4995 ---- MAT_ABSOLUTE | MAT_PLAYER | MAT_ME); } /* non-connected players return error -1 */ ! if (!GoodObject(target) || !Connected(target)) { safe_str("-1", buff, bp); return; } *************** *** 5028,5034 **** MAT_ABSOLUTE | MAT_PLAYER); } /* non-connected players and dark wizards return error, -1 */ ! if ((target == NOTHING) || !Connected(target)) { safe_str("-1", buff, bp); return; } --- 5028,5034 ---- MAT_ABSOLUTE | MAT_PLAYER); } /* non-connected players and dark wizards return error, -1 */ ! if (!GoodObject(target) || !Connected(target)) { safe_str("-1", buff, bp); return; } *************** *** 5067,5073 **** target = match_result(executor, args[0], TYPE_PLAYER, MAT_ABSOLUTE | MAT_PLAYER); } ! if ((target == NOTHING) || !Connected(target)) { return; } /* Walk descriptor chain. Don't worry about buffer length limits. */ --- 5067,5073 ---- target = match_result(executor, args[0], TYPE_PLAYER, MAT_ABSOLUTE | MAT_PLAYER); } ! if (!GoodObject(target) || !Connected(target)) { return; } /* Walk descriptor chain. Don't worry about buffer length limits. */ *** 1_7_6.161/hdrs/version.h Mon, 02 Jun 2003 13:30:26 -0500 dunemush (pennmush/c/47_version.h 1.32.1.2.1.7.1.9.1.1.1.17.1.2.1.10 660) --- 1_7_6.168(w)/hdrs/version.h Tue, 24 Jun 2003 14:50:20 -0500 dunemush (pennmush/c/47_version.h 1.32.1.2.1.7.1.9.1.1.1.17.1.2.1.11 660) *************** *** 1,2 **** ! #define VERSION "PennMUSH version 1.7.6 patchlevel 11 [06/01/2003]" ! #define SHORTVN "PennMUSH 1.7.6p11" --- 1,2 ---- ! #define VERSION "PennMUSH version 1.7.6 patchlevel 12 [06/23/2003]" ! #define SHORTVN "PennMUSH 1.7.6p12" *** 1_7_6.161/INSTALL Sun, 22 Dec 2002 01:18:33 -0600 dunemush (pennmush/g/20_INSTALL 1.3 600) --- 1_7_6.168(w)/INSTALL Wed, 18 Jun 2003 12:03:17 -0500 dunemush (pennmush/g/20_INSTALL 1.4 600) *************** *** 100,106 **** win32/README.txt and then skip down to step #6 below b. Compile with the Cygwin unix emulation tools (http://www.cygwin.com) In addition to the base cygwin stuff, you'll want the following packages: ! binutils, gcc, make, patch, perl, exim-4.10-1 source code (gcc 3.2 is recommended.) These are also recommended: gettext, gettext-devel, indent, vim or emacs --- 100,107 ---- win32/README.txt and then skip down to step #6 below b. Compile with the Cygwin unix emulation tools (http://www.cygwin.com) In addition to the base cygwin stuff, you'll want the following packages: ! binutils, gcc, make, patch, perl, exim (the latest *source* code ! package, not the binary) (gcc 3.2 is recommended.) These are also recommended: gettext, gettext-devel, indent, vim or emacs