Login
User Name:

Password:



Register

Forgot your password?
Overland with Bitmaps
Jul 4, 2025 11:57 pm
By Samson
void nanny_get_new_race -- comm.c
Mar 13, 2025 7:08 am
By Elwood
IPv6
Jan 25, 2025 10:45 pm
By Samson
mudstrlcpy and mudstrlcat
Jan 18, 2025 5:23 pm
By Samson
I3 and IMC
Jan 17, 2025 9:35 pm
By Samson
SWFotEFUSS 1.5.3
Author: Various
Submitted by: Samson
SWRFUSS 1.4.3
Author: Various
Submitted by: Samson
SmaugFUSS 1.9.8
Author: Various
Submitted by: Samson
AFKMud 2.5.2
Author: AFKMud Team
Submitted by: Samson
SmaugFUSS 1.9.7
Author: Various
Submitted by: Samson
Users Online
Anthropic, AhrefsBot, Amazonbot, DotBot, Bing

Members: 0
Guests: 6
Stats
Files
Topics
Posts
Members
Newest Member
507
3,812
19,725
594
Bardecome

» SmaugMuds » Bugfix Lists » AFKMud Bugfix List » AFKMud Bug Archive » [Bug] Deleting a room with th...
Forum Rules | Mark all | Recent Posts

[Bug] Deleting a room with the at command can lead to disaster
< Newer Topic :: Older Topic > AFKMud 1.77

Pages:<< prev 1 next >>
Post is unread #1 Sep 24, 2006 4:17 pm   
Go to the top of the page
Go to the bottom of the page

Samson
Black Hand
GroupAdministrators
Posts3,708
JoinedJan 1, 2002

 
Bug: Deleting a room with the at command can lead to disaster
Danger: High - Potential crash situation. Corrupted room pointer.
Discovered in: AFKMud 1.77
Found by: Remcon
Fixed by: Samson

---

handler.c, char_to_room

Locate:
   if( !ch )
   {
      bug( "%s", "Char_to_room: NULL ch!" );
      return FALSE;
   }


Below that, add:
   if( !get_room_index( pRoomIndex->vnum ) )
      pRoomIndex = NULL;


This simple, yet hackish solution is probably not necessary in 99% of cases. But it's always that 1% that bites you in the ass every time. Invision this: You're in a room. For whatever reason you get the urge to type "rdelete " and voila! The command succeeded.... but... wait. You're back in the room you just told the code to delete. Uh oh. Yeah, I bet you can see that any attempt to remove yourself from this situation isn't going to be good. But with this fix in place, you get a bit of bug spam and a free trip to Limbo instead. Assuming you HAVE a limbo room. But that's a whole other can of worms.

Pages:<< prev 1 next >>