Changeset 495
- Timestamp:
- 08/16/06 02:23:39 (2 years ago)
- Files:
-
- 1.8.0/CHANGES.180 (modified) (1 diff)
- 1.8.0/Patchlevel (modified) (1 diff)
- 1.8.0/game/txt/hlp/pennv180.hlp (modified) (2 diffs)
- 1.8.0/game/txt/hlp/pennvOLD.hlp (modified) (1 diff)
- 1.8.0/hdrs/externs.h (modified) (1 diff)
- 1.8.0/hdrs/version.h (modified) (1 diff)
- 1.8.0/src/access.c (modified) (2 diffs)
- 1.8.0/src/command.c (modified) (4 diffs)
- 1.8.0/src/function.c (modified) (1 diff)
- 1.8.0/src/funlist.c (modified) (2 diffs)
- 1.8.0/src/parse.c (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
1.8.0/CHANGES.180
r493 r495 12 12 13 13 ========================================================================== 14 15 Version 1.8.0 patchlevel 6 June 24, 2005 16 17 Fixes: 18 * Weird logging ouput with function logargs fixed. Report by Sholevi@M*U*S*H. 19 * sort() and set functions now ignore ansi. Patch by Walker@M*U*S*H. 20 * @hook memory leak fixed. Reported by Shari@M*U*S*H. 21 14 22 15 23 Version 1.8.0 patchlevel 5 May 30, 2005 1.8.0/Patchlevel
r493 r495 1 1 Do not edit this file. It is maintained by the official PennMUSH patches. 2 This is PennMUSH 1.8.0p 52 This is PennMUSH 1.8.0p6 1.8.0/game/txt/hlp/pennv180.hlp
r493 r495 1 & 1.8.0p 51 & 1.8.0p6 2 2 & changes 3 3 This is a list of changes in this patchlevel which are probably of … … 12 12 be read in 'help patchlevels'. 13 13 14 Version 1.8.0 patchlevel 6 June 24, 2005 15 16 Fixes: 17 * Weird logging ouput with function logargs fixed. Report by Sholevi@M*U*S*H. 18 * sort() and set functions now ignore ansi. Patch by Walker@M*U*S*H. 19 * @hook memory leak fixed. Reported by Shari@M*U*S*H. 20 21 22 & 1.8.0p5 14 23 Version 1.8.0 patchlevel 5 May 30, 2005 15 24 1.8.0/game/txt/hlp/pennvOLD.hlp
r493 r495 4418 4418 type 'help <version>p<patchlevel>'. For example, 'help 1.7.2p3' 4419 4419 4420 1.8.0: 0, 1, 2, 3, 4, 5 4420 1.8.0: 0, 1, 2, 3, 4, 5, 6 4421 4421 1.7.7: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 4422 4422 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 1.8.0/hdrs/externs.h
r477 r495 570 570 extern void save_global_regs(const char *funcname, char *preserve[]); 571 571 extern void restore_global_regs(const char *funcname, char *preserve[]); 572 extern void free_global_regs(const char *funcname, char *preserve[]); 573 extern void init_global_regs(char *preserve[]); 572 574 extern void load_global_regs(char *preserve[]); 573 575 extern void save_global_env(const char *funcname, char *preserve[]); 1.8.0/hdrs/version.h
r493 r495 1 1 #define VERSION "1.8.0" 2 #define PATCHLEVEL " 5"3 #define PATCHDATE "[0 5/30/2005]"4 #define NUMVERSION 100800000 52 #define PATCHLEVEL "6" 3 #define PATCHDATE "[06/24/2005]" 4 #define NUMVERSION 1008000006 1.8.0/src/access.c
r493 r495 282 282 } 283 283 284 #ifdef FORCE_IPV4 284 285 static char * 285 286 ip4_to_ip6(const char *addr) … … 292 293 return tbuf1; 293 294 } 295 #endif 294 296 295 297 1.8.0/src/command.c
r493 r495 1171 1171 return NULL; 1172 1172 } else { 1173 char *saveregs[NUMQ] = { NULL }; 1173 char *saveregs[NUMQ]; 1174 init_global_regs(saveregs); 1174 1175 /* If we have a hook/ignore that returns false, we don't do the command */ 1175 1176 if (run_hook(player, cause, &cmd->hooks.ignore, saveregs, 1)) { … … 1191 1192 retval = commandraw; 1192 1193 } 1194 free_global_regs("hook.regs", saveregs); 1193 1195 } 1194 1196 … … 1208 1210 { 1209 1211 COMMAND_INFO *cmd; 1210 char *saveregs[NUMQ] = { NULL };1212 char *saveregs[NUMQ]; 1211 1213 1212 1214 if ((cmd = command_find("HUH_COMMAND"))) { 1213 1215 if (!(cmd->type & CMD_T_DISABLED)) { 1216 init_global_regs(saveregs); 1214 1217 if (run_hook(player, cause, &cmd->hooks.ignore, saveregs, 1)) { 1215 1218 /* If we have a hook/override, we use that instead */ … … 1227 1230 do_log(LT_HUH, player, cause, "%s", string); 1228 1231 } 1232 free_global_regs("hook.regs", saveregs); 1229 1233 } 1230 1234 } 1.8.0/src/function.c
r479 r495 72 72 strcpy(global_eval_context.renv[i], preserve[i]); 73 73 mush_free(preserve[i], funcname); 74 preserve[i] = NULL; 74 75 } else { 75 76 global_eval_context.renv[i][0] = '\0'; 76 77 } 78 } 79 } 80 81 /** Free the storage array for the q-registers, without restoring 82 * \param funcname name of function calling (for memory leak testing) 83 * \param preserve pointer to array to free q-registers from. 84 */ 85 void 86 free_global_regs(const char *funcname, char *preserve[]) 87 { 88 int i; 89 for (i = 0; i < NUMQ; i++) { 90 if (preserve[i]) 91 mush_free(preserve[i], funcname); 92 } 93 } 94 95 /** Initilalize an array for the q-registers, setting all NULL. 96 * \param preserve pointer to array to free q-registers from. 97 */ 98 void 99 init_global_regs(char *preserve[]) 100 { 101 int i; 102 for (i = 0; i < NUMQ; i++) { 103 preserve[i] = NULL; 77 104 } 78 105 } 1.8.0/src/funlist.c
r493 r495 11 11 #include <string.h> 12 12 #include <ctype.h> 13 #include "ansi.h" 13 14 #include "conf.h" 14 15 #include "case.h" … … 790 791 GENRECORD(gen_alphanum) 791 792 { 792 rec->str = rec->val; 793 int len; 794 if (strchr(rec->val, ESC_CHAR)) { 795 rec->str = mush_strdup(remove_markup(rec->val, &len), "genrecord"); 796 rec->freestr = 1; 797 } else { 798 rec->str = rec->val; 799 } 793 800 } 794 801 1.8.0/src/parse.c
r477 r495 1134 1134 safe_str(fargs[logi], logstr, &logp); 1135 1135 if (logi + 1 < nfargs) 1136 safe_ str(fargs[logi], logstr, &logp);1136 safe_chr(',', logstr, &logp); 1137 1137 } 1138 1138 safe_chr(')', logstr, &logp);
