This commit is contained in:
MustyMustelidae 2015-02-01 15:59:46 +00:00
commit 44e1107cf7

View file

@ -446,11 +446,27 @@ void TabSupervisor::processGameEventContainer(const GameEventContainer &cont)
void TabSupervisor::processUserMessageEvent(const Event_UserMessage &event)
{
TabMessage *tab = messageTabs.value(QString::fromStdString(event.sender_name()));
QString senderName = QString::fromStdString(event.sender_name());
UserListTWI *twi = tabUserLists->getAllUsersList()->getUsers().value(senderName);
ServerInfo_User otherUser;
if (twi)
otherUser = twi->getUserInfo();
else
otherUser.set_name(senderName.toStdString());
UserLevelFlags otherUserLevel = UserLevelFlags(otherUser.user_level());
if (settingsCache->getIgnoreUnregisteredUsers() && !otherUserLevel.testFlag(ServerInfo_User::IsRegistered))
return;
TabMessage *tab = messageTabs.value(senderName);
if (!tab)
tab = messageTabs.value(QString::fromStdString(event.receiver_name()));
if (!tab)
tab = addMessageTab(QString::fromStdString(event.sender_name()), false);
tab = addMessageTab(senderName, false);
if (!tab)
return;
tab->processUserMessageEvent(event);