Bug: Auction item is not checked when object is extracted
Danger: Medium - Crash under select conditions.
Found by: Remcon
Fixed by: Samson
if( obj->item_type == ITEM_PORTAL )
remove_portal( obj );
Below that, add:
if( auction->item && auction->item == obj )
snprintf( buf, MAX_STRING_LENGTH, "Sale of %s has been stopped by a system action.", auction->item->short_descr );
talk_auction( buf );
auction->item = NULL;
if( auction->buyer != NULL && auction->buyer != auction->seller ) /* return money to the buyer */
auction->buyer->gold += auction->bet;
send_to_char( "Your money has been returned.\r\n", auction->buyer );
If by some chance you manage to cause the currently auctioning item to be extracted, the game will crash upon conclusion of the auction. It may even crash sooner depending on what's going on.