On 03-Mar-2005 Vladimir M wrote:
> Hello, All
>
> Sorry for my terrible english.
>
> Take a server and client from
> http://poe.perl.org/?POE_Cookbook/Application_Servers_2
> Save server untouched, and try to connect to IKC::Server from 2
> clients simultaneously
I don't use IKC w/o preforking, so I can't remember how that part works.
Just clancing at the code, I think I see the problem :
Line 464 of IKC/Server.pm (in sub accept) :
It is :
if($heap->{children} and not $heap->{'is a child'}) {
This fails, because {children} now defaults to {} even if we aren't in
forking mode. *sigh*
Rough fix :
if(0 != keys %{$heap->{children}} and not $heap->{'is a child'}) {
But that just might move the problem elsewhere, and could break forking
servers.
I'll look into this when I have a moment.
-Philip