Moved QUIT chanusers update to Core::IRC and switched to a hashref %src for on_quit.
This commit is contained in:
1 parent
2524262a6f
commit
079f9dc5a9
2 files changed
+13
-6
No files matched your search
@@ -28,6 +28,18 @@ hook_add("on_uprivmsg", "ctcp_version_reply", sub {
|
||||
return 1;
|
||||
});
|
||||
|
||||
# QUIT hook; delete user from chanusers.
|
||||
hook_add("on_quit", "quit_update_chanusers", sub {
|
||||
my (($svr, $src, undef)) = @_;
|
||||
my %src = %{ $src };
|
||||
|
||||
# Delete the user from all channels.
|
||||
foreach my $ccu (keys %{ $Parser::IRC::chanusers{$svr} }) {
|
||||
if (defined $Parser::IRC::chanusers{$svr}{$ccu}{$src{nick}}) { delete $Parser::IRC::chanusers{$svr}{$ccu}{$src{nick}}; }
|
||||
}
|
||||
|
||||
return 1;
|
||||
});
|
||||
|
||||
1;
|
||||
# vim: set ai sw=4 ts=4:
|
||||
+1
-6
@@ -609,11 +609,6 @@ sub quit
|
||||
my ($svr, @ex) = @_;
|
||||
my %src = API::IRC::usrc(substr($ex[0], 1));
|
||||
|
||||
# Delete the user from all channels.
|
||||
foreach my $ccu (keys %{ $chanusers{$svr} }) {
|
||||
delete $chanusers{$svr}{$ccu}{$src{nick}} if defined $chanusers{$svr}{$ccu}{$src{nick}};
|
||||
}
|
||||
|
||||
# Set $msg to the quit message.
|
||||
my $msg = 0;
|
||||
if (defined $ex[2]) {
|
||||
@@ -626,7 +621,7 @@ sub quit
|
||||
}
|
||||
|
||||
# Trigger on_quit.
|
||||
API::Std::event_run("on_quit", ($svr, %src, $msg));
|
||||
API::Std::event_run("on_quit", ($svr, \%src, $msg));
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user