I would have thought the following makes more sense if (defined($recv})) { chomp($recv); $client->send("Works! Received: $recv"); }
where's %commands coming from? On 10/11/07, Shane Anderson <[EMAIL PROTECTED]> wrote: > > Hi All, > > I'm attempting to learn IO::Socket and have hit a snag with this bit of > code: > > while (my ($client, $client_address) = $server->accept()) { > my ($port, $packed_ip) = sockaddr_in($client_address); > my $client_ip = inet_ntoa($packed_ip); > my $stamp = ×tamp; > print LOGFILE "$stamp - Client ($client_ip) connected.\n" if $DEBUG == > 1; > $client->recv($recv, 128); > chomp($recv); > > if (exists($commands{$recv})) { > $client->send("Works! Received: $recv"); > } else { > $client->send("Doesn't work! We received this: $recv"); > } > } > > The code above doesn't print out anything for $recv, however if I remove > the > chomp($recv) it works fine. Anyone got any idea's why running a chomp on > this variable causes it to not be displayed at all? The variable does > contain a newline so I do need to have it removed. > > Thanks, > > Shane > -- > SLUG - Sydney Linux User's Group Mailing List - http://slug.org.au/ > Subscription info and FAQs: http://slug.org.au/faq/mailinglists.html > -- SLUG - Sydney Linux User's Group Mailing List - http://slug.org.au/ Subscription info and FAQs: http://slug.org.au/faq/mailinglists.html