aboutsummaryrefslogtreecommitdiff
path: root/modules/line_handler.py
diff options
context:
space:
mode:
authorGravatar jesopo2018-11-11 13:03:54 +0000
committerGravatar jesopo2018-11-11 13:03:54 +0000
commit6bb03c45197deb9477019233604dbaee7ac4bf81 (patch)
tree9f0196c73092fe9e321831f4e4069f0564f00cf8 /modules/line_handler.py
parentImplement `__len__` on src/IRCChannel.py.Channels (diff)
signature
Don't implicitly create channels, explicitly create channels when we join one
Diffstat (limited to 'modules/line_handler.py')
-rw-r--r--modules/line_handler.py4
1 files changed, 3 insertions, 1 deletions
diff --git a/modules/line_handler.py b/modules/line_handler.py
index 72d3ad83..f722cf1d 100644
--- a/modules/line_handler.py
+++ b/modules/line_handler.py
@@ -187,7 +187,7 @@ class Module(ModuleManager.BaseModule):
def join(self, event):
account = None
realname = None
- channel = event["server"].channels.get(event["args"][0])
+ channel_name = event["args"][0]
if len(event["args"]) == 2:
if not event["args"][1] == "*":
@@ -195,6 +195,7 @@ class Module(ModuleManager.BaseModule):
realname = event["args"][2]
if not event["server"].is_own_nickname(event["prefix"].nickname):
+ channel = event["server"].channels.get(channel_name)
user = event["server"].get_user(event["prefix"].nickname)
if not user.username and not user.hostname:
user.username = event["prefix"].username
@@ -213,6 +214,7 @@ class Module(ModuleManager.BaseModule):
user=user, server=event["server"], account=account,
realname=realname)
else:
+ channel = event["server"].channels.add(channel_name)
if channel.name in event["server"].attempted_join:
del event["server"].attempted_join[channel.name]
self.events.on("self.join").call(channel=channel,