summaryrefslogtreecommitdiff
path: root/modules/protocol/inspircd12.cpp
diff options
context:
space:
mode:
authorAdam <Adam@anope.org>2011-02-22 20:30:45 -0500
committerAdam <Adam@anope.org>2011-02-22 20:30:45 -0500
commitb15410fd3acb47fb305383c74ad0f03add6e38e0 (patch)
tree149c3d8846c9b08cf93358e579c080c24f8b5dee /modules/protocol/inspircd12.cpp
parentc83b2b73d7c5f264dedb67b878d116b5b10a4742 (diff)
Store modes in the databases told to us during runtime that we don't have information any about. Allows mlocking things like InspIRCds +w etc. Also fixes part of #1235
Diffstat (limited to 'modules/protocol/inspircd12.cpp')
-rw-r--r--modules/protocol/inspircd12.cpp9
1 files changed, 4 insertions, 5 deletions
diff --git a/modules/protocol/inspircd12.cpp b/modules/protocol/inspircd12.cpp
index 554e31b61..eb84601ef 100644
--- a/modules/protocol/inspircd12.cpp
+++ b/modules/protocol/inspircd12.cpp
@@ -419,9 +419,8 @@ class Inspircd12IRCdMessage : public InspircdIRCdMessage
case 'a':
ModeManager::AddChannelMode(new ChannelModeStatus(CMODE_PROTECT , "CMODE_PROTECT", 'a', '@'));
continue;
- // XXX mode g
default:
- ModeManager::AddChannelMode(new ChannelModeList(CMODE_END, "", modebuf[t]));
+ ModeManager::AddChannelMode(new ChannelModeList(CMODE_END, modebuf[t], modebuf[t]));
}
}
@@ -434,7 +433,7 @@ class Inspircd12IRCdMessage : public InspircdIRCdMessage
ModeManager::AddChannelMode(new ChannelModeKey('k'));
continue;
default:
- ModeManager::AddChannelMode(new ChannelModeParam(CMODE_END, "", modebuf[t]));
+ ModeManager::AddChannelMode(new ChannelModeParam(CMODE_END, modebuf[t], modebuf[t]));
}
}
@@ -462,7 +461,7 @@ class Inspircd12IRCdMessage : public InspircdIRCdMessage
ModeManager::AddChannelMode(new ChannelModeParam(CMODE_LIMIT, "CMODE_LIMIT", 'l', true));
continue;
default:
- ModeManager::AddChannelMode(new ChannelModeParam(CMODE_END, "", modebuf[t], true));
+ ModeManager::AddChannelMode(new ChannelModeParam(CMODE_END, modebuf[t], modebuf[t], true));
}
}
@@ -544,7 +543,7 @@ class Inspircd12IRCdMessage : public InspircdIRCdMessage
ModeManager::AddChannelMode(new ChannelMode(CMODE_SSL, "CMODE_SSL", 'z'));
continue;
default:
- ModeManager::AddChannelMode(new ChannelMode(CMODE_END, "", modebuf[t]));
+ ModeManager::AddChannelMode(new ChannelMode(CMODE_END, modebuf[t], modebuf[t]));
}
}
}