X-Git-Url: http://gb7djk.dxcluster.net/gitweb/gitweb.cgi?a=blobdiff_plain;f=perl%2FIntMsg.pm;h=190d0b43c49b4bcaafb8c6d62511af31d30a2270;hb=1cc51a6696899a05d1b9ca40dab497cfdc39294b;hp=e3360fdbf566cf6990dda643c41a78953a3a65bd;hpb=f319bf06d72d135e7ec14ff8b27627187f5e2595;p=spider.git diff --git a/perl/IntMsg.pm b/perl/IntMsg.pm index e3360fdb..190d0b43 100644 --- a/perl/IntMsg.pm +++ b/perl/IntMsg.pm @@ -10,6 +10,13 @@ package IntMsg; use strict; + +use vars qw($VERSION $BRANCH); +$VERSION = sprintf( "%d.%03d", q$Revision$ =~ /(\d+)\.(\d+)/ ); +$BRANCH = sprintf( "%d.%03d", q$Revision$ =~ /\d+\.\d+\.(\d+)\.(\d+)/ ) || 0; +$main::build += $VERSION; +$main::branch += $BRANCH; + use Msg; use vars qw(@ISA); @@ -27,12 +34,12 @@ sub dequeue { my $conn = shift; - if ($conn && $conn->{msg} =~ /\n/) { - my @lines = split /\r?\n/, $conn->{msg}; - if ($conn->{msg} =~ /\n$/) { + if ($conn && $conn->{msg} =~ /\cJ/) { + my @lines = $conn->{msg} =~ /([^\cM\cJ]*)\cM?\cJ/g; + if ($conn->{msg} =~ /\cJ$/) { delete $conn->{msg}; } else { - $conn->{msg} = pop @lines; + $conn->{msg} =~ s/([^\cM\cJ]*)\cM?\cJ//g; } for (@lines) { if (defined $_) {