diff options
author | Adam <Adam@anope.org> | 2012-10-25 04:30:22 -0400 |
---|---|---|
committer | Adam <Adam@anope.org> | 2012-10-25 04:30:22 -0400 |
commit | e5efe42ecbb1b84837af5f76f09b7c8ab9d4248d (patch) | |
tree | 1c3e04af2c16e2f261b68dd491b72c97a27367e7 /modules/protocol/bahamut.cpp | |
parent | 10e21bfedaa5aea8a3b3565b596de2dd25230f53 (diff) |
Fixed showing users from the right server on unreal/bahamut
Diffstat (limited to 'modules/protocol/bahamut.cpp')
-rw-r--r-- | modules/protocol/bahamut.cpp | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/modules/protocol/bahamut.cpp b/modules/protocol/bahamut.cpp index d4d7b7703..181b4dc2e 100644 --- a/modules/protocol/bahamut.cpp +++ b/modules/protocol/bahamut.cpp @@ -381,7 +381,14 @@ struct IRCDMessageNick : IRCDMessage { if (params.size() == 10) { - User *user = new User(params[0], params[4], params[5], "", params[8], source.GetServer(), params[9], params[2].is_pos_number_only() ? convertTo<time_t>(params[2]) : 0, params[3]); + Server *s = Server::Find(params[6]); + if (s == NULL) + { + Log(LOG_DEBUG) << "User " << params[0] << " introduced from nonexistant server " << params[6] << "?"; + return true; + } + + User *user = new User(params[0], params[4], params[5], "", params[8], s, params[9], params[2].is_pos_number_only() ? convertTo<time_t>(params[2]) : 0, params[3]); if (user && nickserv) { const NickAlias *na; |