I noticed it while i was writing some kind of blocking system.
If you add an user as a friend, a dialog goes to him and put each other to friendlist.
but if you remove him from your friendlist, it is only deleted from you.
In the block system, you can never block if you are on the other's friends list. Therefore the blocking system has lost its functions.
First, we're adding an user to friendlist.
He continues to be on the friends list even I deleted him from friends.
After you make this fix, it will be deleted from the friends list when he is teleported.
search in Input_main.cpp
MessengerManager::instance().RemoveFromList(ch->GetName(), char_name);
add below:
MessengerManager::instance().RemoveFromList(char_name, ch->GetName());//friend removed from companion too.