summaryrefslogtreecommitdiff
path: root/modules/protocol
diff options
context:
space:
mode:
authorAdam <Adam@anope.org>2015-01-28 22:57:15 -0500
committerAdam <Adam@anope.org>2015-01-28 22:57:15 -0500
commit845ca576b4c5a94f0a3ec12a4dd524a7d017155e (patch)
tree2636bc0ccdf94f957a955277dd89155de49360b6 /modules/protocol
parent2264a206d262f07f6c6d91df867383d6413e0c3f (diff)
More properly track topic change sources and allow users with access to change topics through topiclock
Diffstat (limited to 'modules/protocol')
-rw-r--r--modules/protocol/bahamut.cpp4
-rw-r--r--modules/protocol/hybrid.cpp2
-rw-r--r--modules/protocol/inspircd12.cpp2
-rw-r--r--modules/protocol/ngircd.cpp8
-rw-r--r--modules/protocol/ratbox.cpp2
-rw-r--r--modules/protocol/unreal.cpp2
6 files changed, 10 insertions, 10 deletions
diff --git a/modules/protocol/bahamut.cpp b/modules/protocol/bahamut.cpp
index a399ecece..4e193da01 100644
--- a/modules/protocol/bahamut.cpp
+++ b/modules/protocol/bahamut.cpp
@@ -461,11 +461,11 @@ struct IRCDMessageTopic : IRCDMessage
{
IRCDMessageTopic(Module *creator) : IRCDMessage(creator, "TOPIC", 4) { }
- void Run(MessageSource &, const std::vector<Anope::string> &params) anope_override
+ void Run(MessageSource &source, const std::vector<Anope::string> &params) anope_override
{
Channel *c = Channel::Find(params[0]);
if (c)
- c->ChangeTopicInternal(params[1], params[3], Anope::string(params[2]).is_pos_number_only() ? convertTo<time_t>(params[2]) : Anope::CurTime);
+ c->ChangeTopicInternal(source.GetUser(), params[1], params[3], Anope::string(params[2]).is_pos_number_only() ? convertTo<time_t>(params[2]) : Anope::CurTime);
}
};
diff --git a/modules/protocol/hybrid.cpp b/modules/protocol/hybrid.cpp
index 52c442dc3..b6ee17d45 100644
--- a/modules/protocol/hybrid.cpp
+++ b/modules/protocol/hybrid.cpp
@@ -512,7 +512,7 @@ struct IRCDMessageTBurst : IRCDMessage
Channel *c = Channel::Find(params[1]);
if (c)
- c->ChangeTopicInternal(setter, params[4], topic_time);
+ c->ChangeTopicInternal(NULL, setter, params[4], topic_time);
}
};
diff --git a/modules/protocol/inspircd12.cpp b/modules/protocol/inspircd12.cpp
index 5fb226d99..192a783fe 100644
--- a/modules/protocol/inspircd12.cpp
+++ b/modules/protocol/inspircd12.cpp
@@ -998,7 +998,7 @@ struct IRCDMessageFTopic : IRCDMessage
Channel *c = Channel::Find(params[0]);
if (c)
- c->ChangeTopicInternal(params[2], params[3], Anope::string(params[1]).is_pos_number_only() ? convertTo<time_t>(params[1]) : Anope::CurTime);
+ c->ChangeTopicInternal(NULL, params[2], params[3], Anope::string(params[1]).is_pos_number_only() ? convertTo<time_t>(params[1]) : Anope::CurTime);
}
};
diff --git a/modules/protocol/ngircd.cpp b/modules/protocol/ngircd.cpp
index 61613423e..28f68007b 100644
--- a/modules/protocol/ngircd.cpp
+++ b/modules/protocol/ngircd.cpp
@@ -257,7 +257,7 @@ struct IRCDMessageChaninfo : IRCDMessage
if (params.size() == 3)
{
- c->ChangeTopicInternal(source.GetName(), params[2], Anope::CurTime);
+ c->ChangeTopicInternal(NULL, source.GetName(), params[2], Anope::CurTime);
}
else if (params.size() == 5)
{
@@ -271,9 +271,9 @@ struct IRCDMessageChaninfo : IRCDMessage
case 'l':
modes += " " + params[3];
continue;
+ }
}
- }
- c->ChangeTopicInternal(source.GetName(), params[4], Anope::CurTime);
+ c->ChangeTopicInternal(NULL, source.GetName(), params[4], Anope::CurTime);
}
c->SetModesInternal(source, modes);
@@ -590,7 +590,7 @@ struct IRCDMessageTopic : IRCDMessage
Log(LOG_DEBUG) << "TOPIC for nonexistant channel " << params[0];
return;
}
- c->ChangeTopicInternal(source.GetName(), params[1], Anope::CurTime);
+ c->ChangeTopicInternal(source.GetUser(), source.GetName(), params[1], Anope::CurTime);
}
};
diff --git a/modules/protocol/ratbox.cpp b/modules/protocol/ratbox.cpp
index 8fd9a30cf..8ccabd604 100644
--- a/modules/protocol/ratbox.cpp
+++ b/modules/protocol/ratbox.cpp
@@ -185,7 +185,7 @@ struct IRCDMessageTBurst : IRCDMessage
const Anope::string &setter = params.size() == 4 ? params[2] : "",
topic = params.size() == 4 ? params[3] : params[2];
- c->ChangeTopicInternal(setter, topic, topic_time);
+ c->ChangeTopicInternal(NULL, setter, topic, topic_time);
}
};
diff --git a/modules/protocol/unreal.cpp b/modules/protocol/unreal.cpp
index 40cb1fe70..1bb0db657 100644
--- a/modules/protocol/unreal.cpp
+++ b/modules/protocol/unreal.cpp
@@ -1146,7 +1146,7 @@ struct IRCDMessageTopic : IRCDMessage
{
Channel *c = Channel::Find(params[0]);
if (c)
- c->ChangeTopicInternal(params[1], params[3], Anope::string(params[2]).is_pos_number_only() ? convertTo<time_t>(params[2]) : Anope::CurTime);
+ c->ChangeTopicInternal(source.GetUser(), params[1], params[3], Anope::string(params[2]).is_pos_number_only() ? convertTo<time_t>(params[2]) : Anope::CurTime);
}
};