This is patch05 to PennMUSH 1.7.4. After applying this patch, you will have version 1.7.4p5 To apply this patch, save it to a file in your top-level MUSH directory, and do the following: patch -p1 < 1.7.4-patch05 make install If you use GNU patch 2.2, you probably want the above to be 'patch -b -p1', not just 'patch -p1'. Unix and cygwin users can safely ignore any failed hunks in switchinc.c or switches.h Then @shutdown and restart your MUSH. - Alan/Javelin In this patch: Fixes: * Fix to uninitialized variable that could cause ansi to bleed on some systems. Patch by Luke@M*U*S*H * Prototypes for ansi_align and ansi_save added to externs.h. [DW] * FreeBSD hints file updated to get rid of a compiler warning. [SW] * Setting hate_dest to no will not disable @recycle [SW] * switchinc.c updated. [DW] Prereq: 1.7.4p4 *** 1_7_4.94/Patchlevel Tue, 24 Apr 2001 12:32:31 -0500 dunemush (pennmush/5_Patchlevel 1.22 600) --- 1_7_4.94(w)/Patchlevel Fri, 25 May 2001 11:51:58 -0500 dunemush (pennmush/5_Patchlevel 1.22 600) *************** *** 1,2 **** Do not edit this file. It is maintained by the official PennMUSH patches. ! This is PennMUSH 1.7.4p4 --- 1,2 ---- Do not edit this file. It is maintained by the official PennMUSH patches. ! This is PennMUSH 1.7.4p5 *** 1_7_4.94/CHANGES Tue, 15 May 2001 15:59:50 -0500 dunemush (pennmush/8_CHANGES 1.212 600) --- 1_7_4.94(w)/CHANGES Fri, 25 May 2001 11:39:22 -0500 dunemush (pennmush/8_CHANGES 1.212 600) *************** *** 17,22 **** --- 17,33 ---- ========================================================================== + Version 1.7.4 patchlevel 5 May 25, 2001 + + Fixes: + * Fix to uninitialized variable that could cause ansi to bleed + on some systems. Patch by Luke@M*U*S*H + * Prototypes for ansi_align and ansi_save added to externs.h. [DW] + * FreeBSD hints file updated to get rid of a compiler warning. [SW] + * Setting hate_dest to no will not disable @recycle [SW] + * switchinc.c updated. [DW] + + Version 1.7.4 patchlevel 4 May 13, 2001 Minor changes: *** 1_7_4.94/game/txt/hlp/pennvers.hlp Tue, 15 May 2001 15:59:50 -0500 dunemush (pennmush/12_pennvers.h 1.162 600) --- 1_7_4.94(w)/game/txt/hlp/pennvers.hlp Fri, 25 May 2001 11:50:58 -0500 dunemush (pennmush/12_pennvers.h 1.162 600) *************** *** 1,5 **** & changes ! & 1.7.4p4 This is a list of changes in this patchlevel which are probably of interest to players. More information about new commands and functions can probably be gotten via 'help '. 'help credits' --- 1,5 ---- & changes ! & 1.7.4p5 This is a list of changes in this patchlevel which are probably of interest to players. More information about new commands and functions can probably be gotten via 'help '. 'help credits' *************** *** 11,16 **** --- 11,28 ---- A list of the patchlevels associated with each release can be read in 'help patchlevels'. + Version 1.7.4 patchlevel 5 May 25, 2001 + + Fixes: + * Fix to uninitialized variable that could cause ansi to bleed + on some systems. Patch by Luke@M*U*S*H + * Prototypes for ansi_align and ansi_save added to externs.h. [DW] + * FreeBSD hints file updated to get rid of a compiler warning. [SW] + * Setting hate_dest to no will not disable @recycle [SW] + * switchinc.c updated. [DW] + + + & 1.7.4p4 Version 1.7.4 patchlevel 4 May 13, 2001 Minor changes: *************** *** 4649,4655 **** For information on a specific patchlevel of one of the versions listed, type 'help p'. For example, 'help 1.7.2p3' ! 1.7.4: 0, 1, 2, 3, 4 1.7.3: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 1.7.2: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35 --- 4661,4667 ---- For information on a specific patchlevel of one of the versions listed, type 'help p'. For example, 'help 1.7.2p3' ! 1.7.4: 0, 1, 2, 3, 4, 5 1.7.3: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 1.7.2: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35 *** 1_7_4.94/hints/freebsd.sh Wed, 06 Sep 2000 20:09:35 -0500 dunemush (pennmush/50_freebsd.sh 1.2 600) --- 1_7_4.94(w)/hints/freebsd.sh Fri, 25 May 2001 11:34:32 -0500 dunemush (pennmush/50_freebsd.sh 1.2 600) *************** *** 1,3 **** --- 1,5 ---- usenm=false inclwanted='/usr/local/include' i_malloc='undef' + i_values='undef' + *** 1_7_4.94/src/switchinc.c Tue, 15 May 2001 15:59:50 -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 660) --- 1_7_4.94(w)/src/switchinc.c Fri, 25 May 2001 11:46:23 -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 660) *************** *** 1,388 **** { ! "ACCESS", SWITCH_ACCESS} ! ! , { ! "ADD", SWITCH_ADD} ! ! , { ! "ALL", SWITCH_ALL} ! ! , { ! "ATTRIBS", SWITCH_ATTRIBS} ! ! , { ! "BAN", SWITCH_BAN} ! ! , { ! "BLIND", SWITCH_BLIND} ! ! , { ! "BRIEF", SWITCH_BRIEF} ! ! , { ! "CHECK", SWITCH_CHECK} ! ! , { ! "CHOWN", SWITCH_CHOWN} ! ! , { ! "CLEAR", SWITCH_CLEAR} ! ! , { ! "CMD", SWITCH_CMD} ! ! , { ! "COMMANDS", SWITCH_COMMANDS} ! ! , { ! "CONN", SWITCH_CONN} ! ! , { ! "CONNECT", SWITCH_CONNECT} ! ! , { ! "CONNECTED", SWITCH_CONNECTED} ! ! , { ! "CONTENTS", SWITCH_CONTENTS} ! ! , { ! "COSTS", SWITCH_COSTS} ! ! , { ! "COUNT", SWITCH_COUNT} ! ! , { ! "CREATE", SWITCH_CREATE} ! ! , { ! "DATABASE", SWITCH_DATABASE} ! ! , { ! "DB", SWITCH_DB} ! ! , { ! "DEBUG", SWITCH_DEBUG} ! ! , { ! "DECOMPILE", SWITCH_DECOMPILE} ! ! , { ! "DEFAULTS", SWITCH_DEFAULTS} ! ! , { ! "DELETE", SWITCH_DELETE} ! ! , { ! "DELIM", SWITCH_DELIM} ! ! , { ! "DESC", SWITCH_DESC} ! ! , { ! "DESTROY", SWITCH_DESTROY} ! ! , { ! "DISABLE", SWITCH_DISABLE} ! ! , { ! "DOWN", SWITCH_DOWN} ! ! , { ! "DSTATS", SWITCH_DSTATS} ! ! , { ! "EMIT", SWITCH_EMIT} ! ! , { ! "ENABLE", SWITCH_ENABLE} ! ! , { ! "ERR", SWITCH_ERR} ! ! , { ! "EXITS", SWITCH_EXITS} ! ! , { ! "FILE", SWITCH_FILE} ! ! , { ! "FIRST", SWITCH_FIRST} ! ! , { ! "FLAGS", SWITCH_FLAGS} ! ! , { ! "FOLDER", SWITCH_FOLDER} ! ! , { ! "FOO", SWITCH_FOO} ! ! , { ! "FORWARD", SWITCH_FORWARD} ! ! , { ! "FSTATS", SWITCH_FSTATS} ! ! , { ! "FULL", SWITCH_FULL} ! ! , { ! "FUNCTIONS", SWITCH_FUNCTIONS} ! ! , { ! "FWD", SWITCH_FWD} ! ! , { ! "GAG", SWITCH_GAG} ! ! , { ! "GLOBALS", SWITCH_GLOBALS} ! ! , { ! "HEADER", SWITCH_HEADER} ! ! , { ! "HERE", SWITCH_HERE} ! ! , { ! "HIDE", SWITCH_HIDE} ! ! , { ! "ILIST", SWITCH_ILIST} ! ! , { ! "INVENTORY", SWITCH_INVENTORY} ! ! , { ! "IPRINT", SWITCH_IPRINT} ! ! , { ! "JOIN", SWITCH_JOIN} ! ! , { ! "LIST", SWITCH_LIST} ! ! , { ! "LOWERCASE", SWITCH_LOWERCASE} ! ! , { ! "ME", SWITCH_ME} ! ! , { ! "MEMBERS", SWITCH_MEMBERS} ! ! , { ! "MOD", SWITCH_MOD} ! ! , { ! "MORTAL", SWITCH_MORTAL} ! ! , { ! "MOTD", SWITCH_MOTD} ! ! , { ! "MUTE", SWITCH_MUTE} ! ! , { ! "NAME", SWITCH_NAME} ! ! , { ! "NO", SWITCH_NO} ! ! , { ! "NOEVAL", SWITCH_NOEVAL} ! ! , { ! "NOFLAGCOPY", SWITCH_NOFLAGCOPY} ! ! , { ! "NOISY", SWITCH_NOISY} ! ! , { ! "NOSIG", SWITCH_NOSIG} ! ! , { ! "NOSPACE", SWITCH_NOSPACE} ! ! , { ! "NOTIFY", SWITCH_NOTIFY} ! ! , { ! "NUKE", SWITCH_NUKE} ! ! , { ! "OFF", SWITCH_OFF} ! ! , { ! "ON", SWITCH_ON} ! ! , { ! "OUTSIDE", SWITCH_OUTSIDE} ! ! , { ! "OVERRIDE", SWITCH_OVERRIDE} ! ! , { ! "PANIC", SWITCH_PANIC} ! ! , { ! "PARANOID", SWITCH_PARANOID} ! ! , { ! "PLAYERS", SWITCH_PLAYERS} ! ! , { ! "PORT", SWITCH_PORT} ! ! , { ! "POSE", SWITCH_POSE} ! ! , { ! "PRESERVE", SWITCH_PRESERVE} ! ! , { ! "PRINT", SWITCH_PRINT} ! ! , { ! "PRIVS", SWITCH_PRIVS} ! ! , { ! "PURGE", SWITCH_PURGE} ! ! , { ! "QUICK", SWITCH_QUICK} ! ! , { ! "QUIET", SWITCH_QUIET} ! ! , { ! "READ", SWITCH_READ} ! ! , { ! "REBOOT", SWITCH_REBOOT} ! ! , { ! "REGISTER", SWITCH_REGISTER} ! ! , { ! "REMOVE", SWITCH_REMOVE} ! ! , { ! "RENAME", SWITCH_RENAME} ! ! , { ! "RESTORE", SWITCH_RESTORE} ! ! , { ! "RESTRICT", SWITCH_RESTRICT} ! ! , { ! "RETROACTIVE", SWITCH_RETROACTIVE} ! ! , { ! "ROOM", SWITCH_ROOM} ! ! , { ! "ROOMS", SWITCH_ROOMS} ! ! , { ! "ROYALTY", SWITCH_ROYALTY} ! ! , { ! "SEE", SWITCH_SEE} ! ! , { ! "SEEFLAG", SWITCH_SEEFLAG} ! ! , { ! "SELF", SWITCH_SELF} ! ! , { ! "SEND", SWITCH_SEND} ! ! , { ! "SET", SWITCH_SET} ! ! , { ! "SILENT", SWITCH_SILENT} ! ! , { ! "SKIPDEFAULTS", SWITCH_SKIPDEFAULTS} ! ! , { ! "SPEAK", SWITCH_SPEAK} ! ! , { ! "STATS", SWITCH_STATS} ! ! , { ! "SUMMARY", SWITCH_SUMMARY} ! ! , { ! "TABLES", SWITCH_TABLES} ! ! , { ! "TAG", SWITCH_TAG} ! ! , { ! "TELEPORT", SWITCH_TELEPORT} ! ! , { ! "TF", SWITCH_TF} ! ! , { ! "THINGS", SWITCH_THINGS} ! ! , { ! "TITLE", SWITCH_TITLE} ! ! , { ! "TRACE", SWITCH_TRACE} ! ! , { ! "UNCLEAR", SWITCH_UNCLEAR} ! ! , { ! "UNFOLDER", SWITCH_UNFOLDER} ! ! , { ! "UNGAG", SWITCH_UNGAG} ! ! , { ! "UNHIDE", SWITCH_UNHIDE} ! ! , { ! "UNMUTE", SWITCH_UNMUTE} ! ! , { ! "UNTAG", SWITCH_UNTAG} ! ! , { ! "UNTIL", SWITCH_UNTIL} ! ! , { ! "URGENT", SWITCH_URGENT} ! ! , { ! "USEFLAG", SWITCH_USEFLAG} ! ! , { ! "WHAT", SWITCH_WHAT} ! ! , { ! "WIPE", SWITCH_WIPE} ! ! , { ! "WIZ", SWITCH_WIZ} ! ! , { ! "WIZARD", SWITCH_WIZARD} ! ! , { ! "YES", SWITCH_YES} ! ! , { ! "ZONE", SWITCH_ZONE} ! , --- 1,512 ---- { ! "ACCESS", SWITCH_ACCESS ! } ! , ! { ! "ADD", SWITCH_ADD ! } ! , ! { ! "ALL", SWITCH_ALL ! } ! , ! { ! "ATTRIBS", SWITCH_ATTRIBS ! } ! , ! { ! "BAN", SWITCH_BAN ! } ! , ! { ! "BLIND", SWITCH_BLIND ! } ! , ! { ! "BRIEF", SWITCH_BRIEF ! } ! , ! { ! "CHECK", SWITCH_CHECK ! } ! , ! { ! "CHOWN", SWITCH_CHOWN ! } ! , ! { ! "CLEAR", SWITCH_CLEAR ! } ! , ! { ! "CMD", SWITCH_CMD ! } ! , ! { ! "COMMANDS", SWITCH_COMMANDS ! } ! , ! { ! "CONN", SWITCH_CONN ! } ! , ! { ! "CONNECT", SWITCH_CONNECT ! } ! , ! { ! "CONNECTED", SWITCH_CONNECTED ! } ! , ! { ! "CONTENTS", SWITCH_CONTENTS ! } ! , ! { ! "COSTS", SWITCH_COSTS ! } ! , ! { ! "COUNT", SWITCH_COUNT ! } ! , ! { ! "CREATE", SWITCH_CREATE ! } ! , ! { ! "DATABASE", SWITCH_DATABASE ! } ! , ! { ! "DB", SWITCH_DB ! } ! , ! { ! "DEBUG", SWITCH_DEBUG ! } ! , ! { ! "DECOMPILE", SWITCH_DECOMPILE ! } ! , ! { ! "DEFAULTS", SWITCH_DEFAULTS ! } ! , ! { ! "DELETE", SWITCH_DELETE ! } ! , ! { ! "DELIM", SWITCH_DELIM ! } ! , ! { ! "DESC", SWITCH_DESC ! } ! , ! { ! "DESTROY", SWITCH_DESTROY ! } ! , ! { ! "DISABLE", SWITCH_DISABLE ! } ! , ! { ! "DOWN", SWITCH_DOWN ! } ! , ! { ! "DSTATS", SWITCH_DSTATS ! } ! , ! { ! "EMIT", SWITCH_EMIT ! } ! , ! { ! "ENABLE", SWITCH_ENABLE ! } ! , ! { ! "ERR", SWITCH_ERR ! } ! , ! { ! "EXITS", SWITCH_EXITS ! } ! , ! { ! "FILE", SWITCH_FILE ! } ! , ! { ! "FIRST", SWITCH_FIRST ! } ! , ! { ! "FLAGS", SWITCH_FLAGS ! } ! , ! { ! "FOLDERS", SWITCH_FOLDERS ! } ! , ! { ! "FORWARD", SWITCH_FORWARD ! } ! , ! { ! "FSTATS", SWITCH_FSTATS ! } ! , ! { ! "FULL", SWITCH_FULL ! } ! , ! { ! "FUNCTIONS", SWITCH_FUNCTIONS ! } ! , ! { ! "FWD", SWITCH_FWD ! } ! , ! { ! "GAG", SWITCH_GAG ! } ! , ! { ! "GLOBALS", SWITCH_GLOBALS ! } ! , ! { ! "HEADER", SWITCH_HEADER ! } ! , ! { ! "HERE", SWITCH_HERE ! } ! , ! { ! "HIDE", SWITCH_HIDE ! } ! , ! { ! "ILIST", SWITCH_ILIST ! } ! , ! { ! "INVENTORY", SWITCH_INVENTORY ! } ! , ! { ! "IPRINT", SWITCH_IPRINT ! } ! , ! { ! "JOIN", SWITCH_JOIN ! } ! , ! { ! "LIST", SWITCH_LIST ! } ! , ! { ! "LOWERCASE", SWITCH_LOWERCASE ! } ! , ! { ! "ME", SWITCH_ME ! } ! , ! { ! "MEMBERS", SWITCH_MEMBERS ! } ! , ! { ! "MOD", SWITCH_MOD ! } ! , ! { ! "MORTAL", SWITCH_MORTAL ! } ! , ! { ! "MOTD", SWITCH_MOTD ! } ! , ! { ! "MUTE", SWITCH_MUTE ! } ! , ! { ! "NAME", SWITCH_NAME ! } ! , ! { ! "NO", SWITCH_NO ! } ! , ! { ! "NOEVAL", SWITCH_NOEVAL ! } ! , ! { ! "NOFLAGCOPY", SWITCH_NOFLAGCOPY ! } ! , ! { ! "NOISY", SWITCH_NOISY ! } ! , ! { ! "NOSIG", SWITCH_NOSIG ! } ! , ! { ! "NOSPACE", SWITCH_NOSPACE ! } ! , ! { ! "NOTIFY", SWITCH_NOTIFY ! } ! , ! { ! "NUKE", SWITCH_NUKE ! } ! , ! { ! "OFF", SWITCH_OFF ! } ! , ! { ! "ON", SWITCH_ON ! } ! , ! { ! "OUTSIDE", SWITCH_OUTSIDE ! } ! , ! { ! "OVERRIDE", SWITCH_OVERRIDE ! } ! , ! { ! "PANIC", SWITCH_PANIC ! } ! , ! { ! "PARANOID", SWITCH_PARANOID ! } ! , ! { ! "PLAYERS", SWITCH_PLAYERS ! } ! , ! { ! "PORT", SWITCH_PORT ! } ! , ! { ! "POSE", SWITCH_POSE ! } ! , ! { ! "PRESERVE", SWITCH_PRESERVE ! } ! , ! { ! "PRINT", SWITCH_PRINT ! } ! , ! { ! "PRIVS", SWITCH_PRIVS ! } ! , ! { ! "PURGE", SWITCH_PURGE ! } ! , ! { ! "QUICK", SWITCH_QUICK ! } ! , ! { ! "QUIET", SWITCH_QUIET ! } ! , ! { ! "READ", SWITCH_READ ! } ! , ! { ! "REBOOT", SWITCH_REBOOT ! } ! , ! { ! "REGISTER", SWITCH_REGISTER ! } ! , ! { ! "REMOVE", SWITCH_REMOVE ! } ! , ! { ! "RENAME", SWITCH_RENAME ! } ! , ! { ! "RESTORE", SWITCH_RESTORE ! } ! , ! { ! "RESTRICT", SWITCH_RESTRICT ! } ! , ! { ! "RETROACTIVE", SWITCH_RETROACTIVE ! } ! , ! { ! "ROOM", SWITCH_ROOM ! } ! , ! { ! "ROOMS", SWITCH_ROOMS ! } ! , ! { ! "ROYALTY", SWITCH_ROYALTY ! } ! , ! { ! "SEE", SWITCH_SEE ! } ! , ! { ! "SEEFLAG", SWITCH_SEEFLAG ! } ! , ! { ! "SELF", SWITCH_SELF ! } ! , ! { ! "SEND", SWITCH_SEND ! } ! , ! { ! "SET", SWITCH_SET ! } ! , ! { ! "SILENT", SWITCH_SILENT ! } ! , ! { ! "SKIPDEFAULTS", SWITCH_SKIPDEFAULTS ! } ! , ! { ! "SPEAK", SWITCH_SPEAK ! } ! , ! { ! "STATS", SWITCH_STATS ! } ! , ! { ! "SUMMARY", SWITCH_SUMMARY ! } ! , ! { ! "TABLES", SWITCH_TABLES ! } ! , ! { ! "TAG", SWITCH_TAG ! } ! , ! { ! "TELEPORT", SWITCH_TELEPORT ! } ! , ! { ! "TF", SWITCH_TF ! } ! , ! { ! "THINGS", SWITCH_THINGS ! } ! , ! { ! "TITLE", SWITCH_TITLE ! } ! , ! { ! "TRACE", SWITCH_TRACE ! } ! , ! { ! "UNCLEAR", SWITCH_UNCLEAR ! } ! , ! { ! "UNFOLDER", SWITCH_UNFOLDER ! } ! , ! { ! "UNGAG", SWITCH_UNGAG ! } ! , ! { ! "UNHIDE", SWITCH_UNHIDE ! } ! , ! { ! "UNMUTE", SWITCH_UNMUTE ! } ! , ! { ! "UNTAG", SWITCH_UNTAG ! } ! , ! { ! "UNTIL", SWITCH_UNTIL ! } ! , ! { ! "URGENT", SWITCH_URGENT ! } ! , ! { ! "USEFLAG", SWITCH_USEFLAG ! } ! , ! { ! "WHAT", SWITCH_WHAT ! } ! , ! { ! "WIPE", SWITCH_WIPE ! } ! , ! { ! "WIZ", SWITCH_WIZ ! } ! , ! { ! "WIZARD", SWITCH_WIZARD ! } ! , ! { ! "YES", SWITCH_YES ! } ! , ! { ! "ZONE", SWITCH_ZONE ! } , *** 1_7_4.94/src/strutil.c Tue, 15 May 2001 15:59:50 -0500 dunemush (pennmush/b/33_strutil.c 1.28.1.3.1.3.1.1 660) --- 1_7_4.94(w)/src/strutil.c Fri, 25 May 2001 11:38:02 -0500 dunemush (pennmush/b/33_strutil.c 1.28.1.3.1.3.1.1 660) *************** *** 41,48 **** char * mush_strdup(s, check) ! const char *s; ! const char *check; { char *x; --- 41,48 ---- char * mush_strdup(s, check) ! const char *s; ! const char *check; { char *x; *** 1_7_4.94/src/malias.c Tue, 15 May 2001 15:59:50 -0500 dunemush (pennmush/c/3_malias.c 1.30 660) --- 1_7_4.94(w)/src/malias.c Fri, 25 May 2001 11:38:01 -0500 dunemush (pennmush/c/3_malias.c 1.30 660) *************** *** 329,335 **** return; } else if (Wizard(player) || (player == m->owner)) { if (m->desc) ! free(m->desc); /* No need to update MEM_CHECK records here */ m->desc = u_strdup(compress(desc)); notify(player, T("MAIL: Description changed.")); } else --- 329,335 ---- return; } else if (Wizard(player) || (player == m->owner)) { if (m->desc) ! free(m->desc); /* No need to update MEM_CHECK records here */ m->desc = u_strdup(compress(desc)); notify(player, T("MAIL: Description changed.")); } else *************** *** 393,400 **** notify(player, T("MAIL: Permission denied.")); return; } ! ! free(m->name); /* No need to update MEM_CHECK records here. */ m->name = strdup(newname + 1); notify(player, T("MAIL: Mail Alias renamed.")); --- 393,400 ---- notify(player, T("MAIL: Permission denied.")); return; } ! ! free(m->name); /* No need to update MEM_CHECK records here. */ m->name = strdup(newname + 1); notify(player, T("MAIL: Mail Alias renamed.")); *************** *** 584,592 **** for (i = 0; i < ma_top; i++) { m = &malias[i]; if (m->name) ! mush_free(m->name, "malias_name"); if (m->desc) ! mush_free(m->desc, "malias_desc"); if (m->members) mush_free((Malloc_t) m->members, "malias_members"); } --- 584,592 ---- for (i = 0; i < ma_top; i++) { m = &malias[i]; if (m->name) ! mush_free(m->name, "malias_name"); if (m->desc) ! mush_free(m->desc, "malias_desc"); if (m->members) mush_free((Malloc_t) m->members, "malias_members"); } *************** *** 785,791 **** notify(player, T("MAIL: No valid recipients for alias-list!")); return; } ! members = (dbref *) mush_malloc(sizeof(dbref) * (i + m->size), "malias_members"); memcpy(members, m->members, sizeof(dbref) * m->size); memcpy(&members[m->size], alist, sizeof(dbref) * i); --- 785,792 ---- notify(player, T("MAIL: No valid recipients for alias-list!")); return; } ! members = ! (dbref *) mush_malloc(sizeof(dbref) * (i + m->size), "malias_members"); memcpy(members, m->members, sizeof(dbref) * m->size); memcpy(&members[m->size], alist, sizeof(dbref) * i); *************** *** 1065,1071 **** m->size = getref(fp); if (m->size > 0) { ! m->members = (dbref *) mush_malloc(m->size * sizeof(dbref), "malias_members"); for (j = 0; j < m->size; j++) { m->members[j] = getref(fp); } --- 1066,1073 ---- m->size = getref(fp); if (m->size > 0) { ! m->members = ! (dbref *) mush_malloc(m->size * sizeof(dbref), "malias_members"); for (j = 0; j < m->size; j++) { m->members[j] = getref(fp); } *** 1_7_4.94/src/funstr.c Fri, 11 May 2001 15:40:56 -0500 dunemush (pennmush/c/13_funstr.c 1.28.1.1.1.2.1.4 660) --- 1_7_4.94(w)/src/funstr.c Fri, 25 May 2001 11:49:12 -0500 dunemush (pennmush/c/13_funstr.c 1.28.1.1.1.2.1.4 660) *************** *** 1011,1017 **** char *buff; char **bp; { ! ansi_data old_ad; int f = 0; if ((old_ad.fore && !ad->fore) --- 1011,1017 ---- char *buff; char **bp; { ! static ansi_data old_ad = { 0, 0, 0 }; int f = 0; if ((old_ad.fore && !ad->fore) *************** *** 1023,1028 **** --- 1023,1035 ---- old_ad.back = 0; } + if ((old_ad.fore == ad->fore) + && (old_ad.back == ad->back) + && (old_ad.flags == ad->flags)) + /* If nothing has changed, don't bother doing anything. + * This stops the entirely pointless \e[m being generated. */ + return; + safe_str(ANSI_BEGIN, buff, bp); if (EDGE_UP(old_ad.flags, ad->flags, COL_FLASH)) { *************** *** 1063,1069 **** --- 1070,1079 ---- safe_str(ANSI_END, buff, bp); + old_ad = *ad; + } + /* ARGSUSED */ FUNCTION(fun_ansi) *** 1_7_4.94/src/function.c Tue, 15 May 2001 15:59:50 -0500 dunemush (pennmush/c/18_function.c 1.29.1.14.1.3.1.1 660) --- 1_7_4.94(w)/src/function.c Fri, 25 May 2001 11:38:01 -0500 dunemush (pennmush/c/18_function.c 1.29.1.14.1.3.1.1 660) *************** *** 869,875 **** /* now add it to the user function table */ userfn_tab[userfn_count].thing = thing; ! userfn_tab[userfn_count].name = mush_strdup(upcasestr(argv[2]), "userfn_tab.name"); userfn_tab[userfn_count].fn = mush_strdup(upcasestr(name), "usrfn_tab.fn"); userfn_count++; --- 869,876 ---- /* now add it to the user function table */ userfn_tab[userfn_count].thing = thing; ! userfn_tab[userfn_count].name = ! mush_strdup(upcasestr(argv[2]), "userfn_tab.name"); userfn_tab[userfn_count].fn = mush_strdup(upcasestr(name), "usrfn_tab.fn"); userfn_count++; *************** *** 900,906 **** if (userfn_tab[fp->where.offset].name) mush_free((Malloc_t) userfn_tab[fp->where.offset].name, "userfn_tab.name"); ! userfn_tab[fp->where.offset].name = mush_strdup(upcasestr(argv[2]), "userfn_tab.name"); notify(player, T("Function updated.")); } } --- 901,908 ---- if (userfn_tab[fp->where.offset].name) mush_free((Malloc_t) userfn_tab[fp->where.offset].name, "userfn_tab.name"); ! userfn_tab[fp->where.offset].name = ! mush_strdup(upcasestr(argv[2]), "userfn_tab.name"); notify(player, T("Function updated.")); } } *** 1_7_4.94/src/cque.c Tue, 15 May 2001 15:59:50 -0500 dunemush (pennmush/c/28_cque.c 1.36.1.1 660) --- 1_7_4.94(w)/src/cque.c Fri, 25 May 2001 11:37:59 -0500 dunemush (pennmush/c/28_cque.c 1.36.1.1 660) *************** *** 361,367 **** } else { /* Put it on the semaphore queue, sorted by time */ ! tmp->semattr = mush_strdup(semattr ? semattr : "SEMAPHORE", "bqueue_semattr"); if (!tmp->left) { /* No timeout, just shove it on the end */ tmp->next = NULL; if (qsemlast != NULL) --- 361,368 ---- } else { /* Put it on the semaphore queue, sorted by time */ ! tmp->semattr = ! mush_strdup(semattr ? semattr : "SEMAPHORE", "bqueue_semattr"); if (!tmp->left) { /* No timeout, just shove it on the end */ tmp->next = NULL; if (qsemlast != NULL) *** 1_7_4.94/src/command.c Tue, 15 May 2001 15:59:50 -0500 dunemush (pennmush/c/36_command.c 1.56.1.1.1.1.1.1.1.2.1.1 660) --- 1_7_4.94(w)/src/command.c Fri, 25 May 2001 11:37:59 -0500 dunemush (pennmush/c/36_command.c 1.56.1.1.1.1.1.1.1.2.1.1 660) *************** *** 541,548 **** command_mkalias(); if (HATE_DEST) restrict_command("@DESTROY", "noplayer"); - else - restrict_command("@RECYCLE", "nobody"); if (!PLAYER_LOCATE) restrict_command("@WHEREIS", "nobody"); } --- 541,546 ---- *** 1_7_4.94/hdrs/version.h Tue, 15 May 2001 15:59:50 -0500 dunemush (pennmush/c/47_version.h 1.32.1.2.1.7.1.1 660) --- 1_7_4.94(w)/hdrs/version.h Fri, 25 May 2001 11:52:06 -0500 dunemush (pennmush/c/47_version.h 1.32.1.2.1.7.1.1 660) *************** *** 1,2 **** ! #define VERSION "PennMUSH version 1.7.4 patchlevel 4 [05/13/2001]" ! #define SHORTVN "PennMUSH 1.7.4p4" --- 1,2 ---- ! #define VERSION "PennMUSH version 1.7.4 patchlevel 5 [05/25/2001]" ! #define SHORTVN "PennMUSH 1.7.4p5" *** 1_7_4.94/hdrs/externs.h Tue, 15 May 2001 15:59:50 -0500 dunemush (pennmush/d/16_externs.h 1.1.1.53.1.2.1.1 660) --- 1_7_4.94(w)/hdrs/externs.h Fri, 25 May 2001 11:38:03 -0500 dunemush (pennmush/d/16_externs.h 1.1.1.53.1.2.1.1 660) *************** *** 289,294 **** --- 289,296 ---- #endif #endif extern char *remove_markup _((const char *orig)); + extern int ansi_save _((const char *string, int length, char *buff, char **bp)); + extern int ansi_align _((const char *string, int length)); /* Append a character to the end of a BUFFER_LEN long string. * Two versions here - one an inline macro, the other a function. *** 1_7_4.94/hdrs/switches.h Tue, 09 Jan 2001 17:56:37 -0600 dunemush (pennmush/d/21_switches.h 1.2.1.6 660) --- 1_7_4.94(w)/hdrs/switches.h Fri, 25 May 2001 11:46:23 -0500 dunemush (pennmush/d/21_switches.h 1.2.1.6 660) *************** *** 36,129 **** #define SWITCH_FILE 36 #define SWITCH_FIRST 37 #define SWITCH_FLAGS 38 ! #define SWITCH_FOLDER 39 ! #define SWITCH_FOO 40 ! #define SWITCH_FORWARD 41 ! #define SWITCH_FSTATS 42 ! #define SWITCH_FULL 43 ! #define SWITCH_FUNCTIONS 44 ! #define SWITCH_FWD 45 ! #define SWITCH_GAG 46 ! #define SWITCH_GLOBALS 47 ! #define SWITCH_HEADER 48 ! #define SWITCH_HERE 49 ! #define SWITCH_HIDE 50 ! #define SWITCH_ILIST 51 ! #define SWITCH_INVENTORY 52 ! #define SWITCH_IPRINT 53 ! #define SWITCH_JOIN 54 ! #define SWITCH_LIST 55 ! #define SWITCH_LOWERCASE 56 ! #define SWITCH_ME 57 ! #define SWITCH_MEMBERS 58 ! #define SWITCH_MOD 59 ! #define SWITCH_MORTAL 60 ! #define SWITCH_MOTD 61 ! #define SWITCH_MUTE 62 ! #define SWITCH_NAME 63 ! #define SWITCH_NO 64 ! #define SWITCH_NOEVAL 65 ! #define SWITCH_NOFLAGCOPY 66 ! #define SWITCH_NOISY 67 ! #define SWITCH_NOSIG 68 ! #define SWITCH_NOSPACE 69 ! #define SWITCH_NOTIFY 70 ! #define SWITCH_NUKE 71 ! #define SWITCH_OFF 72 ! #define SWITCH_ON 73 ! #define SWITCH_OUTSIDE 74 ! #define SWITCH_OVERRIDE 75 ! #define SWITCH_PANIC 76 ! #define SWITCH_PARANOID 77 ! #define SWITCH_PLAYERS 78 ! #define SWITCH_PORT 79 ! #define SWITCH_POSE 80 ! #define SWITCH_PRESERVE 81 ! #define SWITCH_PRINT 82 ! #define SWITCH_PRIVS 83 ! #define SWITCH_PURGE 84 ! #define SWITCH_QUICK 85 ! #define SWITCH_QUIET 86 ! #define SWITCH_READ 87 ! #define SWITCH_REBOOT 88 ! #define SWITCH_REGISTER 89 ! #define SWITCH_REMOVE 90 ! #define SWITCH_RENAME 91 ! #define SWITCH_RESTORE 92 ! #define SWITCH_RESTRICT 93 ! #define SWITCH_RETROACTIVE 94 ! #define SWITCH_ROOM 95 ! #define SWITCH_ROOMS 96 ! #define SWITCH_ROYALTY 97 ! #define SWITCH_SEE 98 ! #define SWITCH_SEEFLAG 99 ! #define SWITCH_SELF 100 ! #define SWITCH_SEND 101 ! #define SWITCH_SET 102 ! #define SWITCH_SILENT 103 ! #define SWITCH_SKIPDEFAULTS 104 ! #define SWITCH_SPEAK 105 ! #define SWITCH_STATS 106 ! #define SWITCH_SUMMARY 107 ! #define SWITCH_TABLES 108 ! #define SWITCH_TAG 109 ! #define SWITCH_TELEPORT 110 ! #define SWITCH_TF 111 ! #define SWITCH_THINGS 112 ! #define SWITCH_TITLE 113 ! #define SWITCH_TRACE 114 ! #define SWITCH_UNCLEAR 115 ! #define SWITCH_UNFOLDER 116 ! #define SWITCH_UNGAG 117 ! #define SWITCH_UNHIDE 118 ! #define SWITCH_UNMUTE 119 ! #define SWITCH_UNTAG 120 ! #define SWITCH_UNTIL 121 ! #define SWITCH_URGENT 122 ! #define SWITCH_USEFLAG 123 ! #define SWITCH_WHAT 124 ! #define SWITCH_WIPE 125 ! #define SWITCH_WIZ 126 ! #define SWITCH_WIZARD 127 ! #define SWITCH_YES 128 ! #define SWITCH_ZONE 129 --- 36,128 ---- #define SWITCH_FILE 36 #define SWITCH_FIRST 37 #define SWITCH_FLAGS 38 ! #define SWITCH_FOLDERS 39 ! #define SWITCH_FORWARD 40 ! #define SWITCH_FSTATS 41 ! #define SWITCH_FULL 42 ! #define SWITCH_FUNCTIONS 43 ! #define SWITCH_FWD 44 ! #define SWITCH_GAG 45 ! #define SWITCH_GLOBALS 46 ! #define SWITCH_HEADER 47 ! #define SWITCH_HERE 48 ! #define SWITCH_HIDE 49 ! #define SWITCH_ILIST 50 ! #define SWITCH_INVENTORY 51 ! #define SWITCH_IPRINT 52 ! #define SWITCH_JOIN 53 ! #define SWITCH_LIST 54 ! #define SWITCH_LOWERCASE 55 ! #define SWITCH_ME 56 ! #define SWITCH_MEMBERS 57 ! #define SWITCH_MOD 58 ! #define SWITCH_MORTAL 59 ! #define SWITCH_MOTD 60 ! #define SWITCH_MUTE 61 ! #define SWITCH_NAME 62 ! #define SWITCH_NO 63 ! #define SWITCH_NOEVAL 64 ! #define SWITCH_NOFLAGCOPY 65 ! #define SWITCH_NOISY 66 ! #define SWITCH_NOSIG 67 ! #define SWITCH_NOSPACE 68 ! #define SWITCH_NOTIFY 69 ! #define SWITCH_NUKE 70 ! #define SWITCH_OFF 71 ! #define SWITCH_ON 72 ! #define SWITCH_OUTSIDE 73 ! #define SWITCH_OVERRIDE 74 ! #define SWITCH_PANIC 75 ! #define SWITCH_PARANOID 76 ! #define SWITCH_PLAYERS 77 ! #define SWITCH_PORT 78 ! #define SWITCH_POSE 79 ! #define SWITCH_PRESERVE 80 ! #define SWITCH_PRINT 81 ! #define SWITCH_PRIVS 82 ! #define SWITCH_PURGE 83 ! #define SWITCH_QUICK 84 ! #define SWITCH_QUIET 85 ! #define SWITCH_READ 86 ! #define SWITCH_REBOOT 87 ! #define SWITCH_REGISTER 88 ! #define SWITCH_REMOVE 89 ! #define SWITCH_RENAME 90 ! #define SWITCH_RESTORE 91 ! #define SWITCH_RESTRICT 92 ! #define SWITCH_RETROACTIVE 93 ! #define SWITCH_ROOM 94 ! #define SWITCH_ROOMS 95 ! #define SWITCH_ROYALTY 96 ! #define SWITCH_SEE 97 ! #define SWITCH_SEEFLAG 98 ! #define SWITCH_SELF 99 ! #define SWITCH_SEND 100 ! #define SWITCH_SET 101 ! #define SWITCH_SILENT 102 ! #define SWITCH_SKIPDEFAULTS 103 ! #define SWITCH_SPEAK 104 ! #define SWITCH_STATS 105 ! #define SWITCH_SUMMARY 106 ! #define SWITCH_TABLES 107 ! #define SWITCH_TAG 108 ! #define SWITCH_TELEPORT 109 ! #define SWITCH_TF 110 ! #define SWITCH_THINGS 111 ! #define SWITCH_TITLE 112 ! #define SWITCH_TRACE 113 ! #define SWITCH_UNCLEAR 114 ! #define SWITCH_UNFOLDER 115 ! #define SWITCH_UNGAG 116 ! #define SWITCH_UNHIDE 117 ! #define SWITCH_UNMUTE 118 ! #define SWITCH_UNTAG 119 ! #define SWITCH_UNTIL 120 ! #define SWITCH_URGENT 121 ! #define SWITCH_USEFLAG 122 ! #define SWITCH_WHAT 123 ! #define SWITCH_WIPE 124 ! #define SWITCH_WIZ 125 ! #define SWITCH_WIZARD 126 ! #define SWITCH_YES 127 ! #define SWITCH_ZONE 128