summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/rbot/rfc2812.rb8
1 files changed, 7 insertions, 1 deletions
diff --git a/lib/rbot/rfc2812.rb b/lib/rbot/rfc2812.rb
index 21cd9ff7..ee0d08d6 100644
--- a/lib/rbot/rfc2812.rb
+++ b/lib/rbot/rfc2812.rb
@@ -1534,7 +1534,7 @@ module Irc
data[:modes].last << arg
end
}
- else
+ when Channel
# array of indices in data[:modes] where parameters
# are needed
who_wants_params = []
@@ -1587,6 +1587,10 @@ module Irc
getting_args = true unless who_wants_params.empty?
end
end
+ unless who_wants_params.empty?
+ warning "Unhandled malformed modeline #{data[:modestring]} (unexpected empty arguments)"
+ return
+ end
data[:modes].each { |mode|
set, key, val = mode
@@ -1596,6 +1600,8 @@ module Irc
data[:target].mode[key].send(set)
end
}
+ else
+ warning "Ignoring #{data[:modestring]} for unrecognized target #{argv[0]} (#{data[:target].inspect})"
end
end
end