summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/modules.h6
-rw-r--r--src/bots.cpp2
-rw-r--r--src/core/db_plain.cpp4
-rw-r--r--src/core/ss_main.c11
4 files changed, 3 insertions, 20 deletions
diff --git a/include/modules.h b/include/modules.h
index 4c5c4cf6b..cbb3a6eb3 100644
--- a/include/modules.h
+++ b/include/modules.h
@@ -602,12 +602,6 @@ class CoreExport Module
*/
virtual void OnBotBan(User *u, ChannelInfo *ci, const char *mask) { }
- /** Called after a bot has been created, but NOT added to the internal
- * list and NOT introduced
- * @param bi The bot
- */
- virtual void OnBotPreLoad(BotInfo *bi) { }
-
/** Called before a bot kicks a user
* @param bi The bot sending the kick
* @param c The channel the user is being kicked on
diff --git a/src/bots.cpp b/src/bots.cpp
index 6e97d4aa2..e9b72f3e8 100644
--- a/src/bots.cpp
+++ b/src/bots.cpp
@@ -60,8 +60,6 @@ BotInfo::BotInfo(const std::string &nnick, const std::string &nuser, const std::
this->SetFlag(BI_GLOBAL);
}
- FOREACH_MOD(I_OnBotPreLoad, OnBotPreLoad(this));
-
insert_bot(this); // XXX, this is ugly, but it needs to stay until hashing of bots is redone in STL.
// If we're synchronised with the uplink already, call introduce_user() for this bot.
diff --git a/src/core/db_plain.cpp b/src/core/db_plain.cpp
index 039f19674..c1c9cdae5 100644
--- a/src/core/db_plain.cpp
+++ b/src/core/db_plain.cpp
@@ -420,7 +420,9 @@ static void LoadNickAlias(const std::vector<std::string> &params)
static void LoadBotInfo(const std::vector<std::string> &params)
{
- BotInfo *bi = new BotInfo(params[0].c_str());
+ BotInfo *bi = findbot(params[0]);
+ if (!bi)
+ bi = new BotInfo(params[0]);
bi->user = sstrdup(params[1].c_str());
bi->host = sstrdup(params[2].c_str());
bi->created = strtol(params[4].c_str(), NULL, 10);
diff --git a/src/core/ss_main.c b/src/core/ss_main.c
index 8ff8080b9..6405c8858 100644
--- a/src/core/ss_main.c
+++ b/src/core/ss_main.c
@@ -42,7 +42,6 @@ class SSMain : public Module
this->SetPermanent(true);
this->AddCommand(cmdTable, new CommandSSHelp());
- ModuleManager::Attach(I_OnBotPreLoad, this);
statserv = findbot("StatServ");
if (!statserv)
@@ -72,16 +71,6 @@ class SSMain : public Module
delete statserv;
}
}
-
- void OnBotPreLoad(BotInfo *bi)
- {
- if (bi->nick == "StatServ")
- {
- delete statserv;
- statserv = bi;
- statserv->cmdTable = cmdTable;
- }
- }
};
MODULE_INIT(SSMain)