mirror of
https://github.com/tbamud/tbamud.git
synced 2025-12-24 03:00:13 +01:00
Fixed unaffect and 2 memory leaks --Rumble
This commit is contained in:
parent
b55af08002
commit
4b44a1a097
8 changed files with 36 additions and 8 deletions
|
|
@ -35,10 +35,16 @@ export (QQ's a zone into a tarball)
|
|||
Xlist (mlist, olist, rlist, zlist, slist, tlist, qlist)
|
||||
(lots of major bugfixes too)
|
||||
@
|
||||
[Jun 20 2010] - Rumble
|
||||
Fixed two memory leaks. (thanks Dio)
|
||||
[Jum 19 2010] - Fizban
|
||||
Changed Helpcheck from level 34 to level 32.
|
||||
[Jun 07 2010] - Fizban
|
||||
Enabled nohassled immortals to give cursed items to other players.
|
||||
[Jun 18 2010] - Rumble
|
||||
Fixed unaffect clearing ch affects and not vict. (thanks Drefs)
|
||||
[May 24 2010] - Rumble
|
||||
Fixed bug in redit copy duplicating people in room. (thanks Anderyu)
|
||||
[May 19 2010] - Rumble
|
||||
Gave Arne Troffaes proper credit for fixing Cygwin syslog rotation.
|
||||
[May 16 2010] - Rumble
|
||||
|
|
|
|||
|
|
@ -1,8 +1,8 @@
|
|||
Text test 5~
|
||||
Body test5
|
||||
Text stuck in a room with no exits~
|
||||
Body I'm stuck in a room, that I suspect was supposed to be a death trap, in the deep, dark forest. three huge poinsonous spiders attacked me but I didn't die and now I'm in a room with no exits.
|
||||
~
|
||||
Name Rumble~
|
||||
Level 34
|
||||
Room 1204
|
||||
Name Stickley~
|
||||
Level 8
|
||||
Room 6131
|
||||
Flags 0 0 0 0
|
||||
End
|
||||
|
|
|
|||
|
|
@ -2341,7 +2341,7 @@ ACMD(do_wizutil)
|
|||
while (vict->affected)
|
||||
affect_remove(vict, vict->affected);
|
||||
for(taeller=0; taeller < AF_ARRAY_MAX; taeller++)
|
||||
AFF_FLAGS(ch)[taeller] = 0;
|
||||
AFF_FLAGS(vict)[taeller] = 0;
|
||||
send_to_char(vict, "There is a brief flash of light!\r\nYou feel slightly different.\r\n");
|
||||
send_to_char(ch, "All spells removed.\r\n");
|
||||
} else {
|
||||
|
|
|
|||
|
|
@ -80,6 +80,7 @@
|
|||
#include "spells.h" /* for affect_update */
|
||||
#include "modify.h"
|
||||
#include "quest.h"
|
||||
#include "ibt.h" /* for free_ibt_lists */
|
||||
|
||||
#ifndef INVALID_SOCKET
|
||||
#define INVALID_SOCKET (-1)
|
||||
|
|
@ -365,6 +366,7 @@ int main(int argc, char **argv)
|
|||
free_invalid_list(); /* ban.c */
|
||||
free_save_list(); /* genolc.c */
|
||||
free_strings(&config_info, OASIS_CFG); /* oasis_delete.c */
|
||||
free_ibt_lists(); /* ibt.c */
|
||||
}
|
||||
|
||||
if (last_act_message)
|
||||
|
|
|
|||
1
src/db.c
1
src/db.c
|
|
@ -1036,7 +1036,6 @@ void index_boot(int mode)
|
|||
/* Sort the help index. */
|
||||
if (mode == DB_BOOT_HLP) {
|
||||
qsort(help_table, top_of_helpt, sizeof(struct help_index_element), hsort);
|
||||
top_of_helpt--;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
14
src/ibt.c
14
src/ibt.c
|
|
@ -1019,3 +1019,17 @@ void ibtedit_string_cleanup(struct descriptor_data *d, int terminator)
|
|||
break;
|
||||
}
|
||||
}
|
||||
|
||||
/*-------------------------------------------------------------------*/
|
||||
void free_ibt_lists()
|
||||
{
|
||||
IBT_DATA *first_ibt, *last_ibt;
|
||||
int mode;
|
||||
|
||||
for( mode=0; mode <=2; mode++){
|
||||
first_ibt = get_first_ibt(mode);
|
||||
last_ibt = get_last_ibt(mode);
|
||||
free_ibt_list(first_ibt, last_ibt);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -96,4 +96,4 @@ void save_ibt_file(int mode);
|
|||
void load_ibt_file(int mode);
|
||||
void ibtedit_parse(struct descriptor_data *d, char *arg);
|
||||
void ibtedit_string_cleanup(struct descriptor_data *d, int terminator);
|
||||
|
||||
void free_ibt_lists();
|
||||
|
|
|
|||
|
|
@ -170,6 +170,13 @@ void redit_setup_existing(struct descriptor_data *d, int real_num)
|
|||
CREATE(room, struct room_data, 1);
|
||||
|
||||
*room = world[real_num];
|
||||
|
||||
/* Make new room people list be empty. */
|
||||
/* Fixes bug where copying a room from within that room creates */
|
||||
/* an infinite loop when you next act() in the new room (goto?) */
|
||||
/* and you are your next_in_room -- anderyu (10-05-22) */
|
||||
room->people = NULL;
|
||||
|
||||
/* Allocate space for all strings. */
|
||||
room->name = str_udup(world[real_num].name);
|
||||
room->description = str_udup(world[real_num].description);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue