Bug: Any item is allowed to be used in a socketed item slot.
Discovered in: AFKMud 1.63
Danger: Medium - Unintended item alteration
Found by: Exo
Fixed by: Samson
Find the following:
if( ( rune = get_obj_carry( ch, arg ) ) == NULL )
ch_printf( ch, "You do not have a %s rune in your inventory!\n\r", arg );
if( ( item = get_obj_carry( ch, argument ) ) == NULL )
ch_printf( ch, "You do not have a %s in your inventory!\n\r", argument );
Below that, add:
if( rune->item_type != ITEM_RUNE )
ch_printf( ch, "%s is not a rune and cannot be used like that!\n\r", rune->short_descr );
This is your typical run of the mill "oops" error in checking the validity of what you're doing. Forgetting to verify that the item being used to insert into the socket is actually a rune. I'm sure this could have resulted in all sorts of interesting results that were never intended to happen.