summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/mode.cpp2
-rw-r--r--src/modules/m_conn_umodes.cpp1
-rw-r--r--src/users.cpp5
3 files changed, 6 insertions, 2 deletions
diff --git a/src/mode.cpp b/src/mode.cpp
index 54349b51d..90489ce62 100644
--- a/src/mode.cpp
+++ b/src/mode.cpp
@@ -534,7 +534,7 @@ void ModeParser::Process(const char** parameters, int pcnt, userrec *user, bool
else
{
user->WriteTo(targetuser,"MODE %s %s%s",targetuser->nick,output_sequence.c_str(), parameter_list.str().c_str());
- FOREACH_MOD(I_OnMode,OnMode(user, targetuser, TYPE_USER, output_sequence));
+ FOREACH_MOD(I_OnMode,OnMode(user, targetuser, TYPE_USER, output_sequence + parameter_list.str()));
this->LastParse = targetuser->nick;
}
}
diff --git a/src/modules/m_conn_umodes.cpp b/src/modules/m_conn_umodes.cpp
index 241191374..73f4cd606 100644
--- a/src/modules/m_conn_umodes.cpp
+++ b/src/modules/m_conn_umodes.cpp
@@ -101,6 +101,7 @@ class ModuleModesOnConnect : public Module
}
}
+ ServerInstance->Log(DEBUG,"Call mode handler to set modes");
ServerInstance->Parser->CallHandler("MODE", modes, size, user);
}
break;
diff --git a/src/users.cpp b/src/users.cpp
index 94b969ca0..550f7cf29 100644
--- a/src/users.cpp
+++ b/src/users.cpp
@@ -1134,8 +1134,11 @@ void userrec::FullConnect(CullList* Goners)
* changes dont go out onto the network and produce 'fake direction'.
*/
FOREACH_MOD(I_OnUserConnect,OnUserConnect(this));
- FOREACH_MOD(I_OnPostConnect,OnPostConnect(this));
+
this->registered = REG_ALL;
+
+ FOREACH_MOD(I_OnPostConnect,OnPostConnect(this));
+
ServerInstance->SNO->WriteToSnoMask('c',"Client connecting on port %d: %s!%s@%s [%s]", this->GetPort(), this->nick, this->ident, this->host, this->GetIPString());
}