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;
|
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;
|
1;
|
||||||
# vim: set ai sw=4 ts=4:
|
# vim: set ai sw=4 ts=4:
|
||||||
+1
-6
@@ -609,11 +609,6 @@ sub quit
|
|||||||
my ($svr, @ex) = @_;
|
my ($svr, @ex) = @_;
|
||||||
my %src = API::IRC::usrc(substr($ex[0], 1));
|
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.
|
# Set $msg to the quit message.
|
||||||
my $msg = 0;
|
my $msg = 0;
|
||||||
if (defined $ex[2]) {
|
if (defined $ex[2]) {
|
||||||
@@ -626,7 +621,7 @@ sub quit
|
|||||||
}
|
}
|
||||||
|
|
||||||
# Trigger on_quit.
|
# Trigger on_quit.
|
||||||
API::Std::event_run("on_quit", ($svr, %src, $msg));
|
API::Std::event_run("on_quit", ($svr, \%src, $msg));
|
||||||
|
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in new issue
Block a user