Index: Client.pm =================================================================== --- Client.pm (revision 48) +++ Client.pm (working copy) @@ -105,7 +105,7 @@ # (I would much rather just use the session ID, but oh well) $self->IRC_CLIENT_ALIAS( $$ + rand(5000) . time() ); - POE::Component::IRC->new( $self->IRC_CLIENT_ALIAS() ) + POE::Component::IRC->spawn( alias => $self->IRC_CLIENT_ALIAS() ) or die "Failed to create P::C::I object: $!"; @@ -285,7 +285,7 @@ { my $metadata = {'obj' => $plugin, 'sub' => $method}; - $session->register_state( $event, $self, 'plugin_delegate' ) + $session->_register_state( $event, $self, 'plugin_delegate' ) unless exists $registry->{$event}; push( @{ $registry->{$event} }, $metadata ); @@ -327,7 +327,7 @@ if( @$r_events == 0 ) { - $session->register_state($event); + $session->_register_state($event); delete $registry->{$event}; } }