summaryrefslogtreecommitdiff
path: root/modules/commands
diff options
context:
space:
mode:
Diffstat (limited to 'modules/commands')
-rw-r--r--modules/commands/os_jupe.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/modules/commands/os_jupe.cpp b/modules/commands/os_jupe.cpp
index fbade0e82..429c5e998 100644
--- a/modules/commands/os_jupe.cpp
+++ b/modules/commands/os_jupe.cpp
@@ -33,9 +33,11 @@ class CommandOSJupe : public Command
else
{
Anope::string rbuf = "Juped by " + source.GetNick() + (!reason.empty() ? ": " + reason : "");
+ /* Generate the new sid before quitting the old server, so they can't collide */
+ Anope::string sid = Servers::TS6_SID_Retrieve();
if (server)
IRCD->SendSquit(server, rbuf);
- Server *juped_server = new Server(Me, jserver, 1, rbuf, Servers::TS6_SID_Retrieve(), true);
+ Server *juped_server = new Server(Me, jserver, 1, rbuf, sid, true);
IRCD->SendServer(juped_server);
Log(LOG_ADMIN, source, this) << "on " << jserver << " (" << rbuf << ")";