X-Git-Url: http://git.rot13.org/?p=MojoX-Gearman.git;a=blobdiff_plain;f=lib%2FMojoX%2FGearman.pm;h=8c87379ca6aaf609e5f0fe791483a67d89c9d482;hp=6565e30723bdf3b71e6ca85a9e21fe8ae9e2a1de;hb=537737a34b1c329ef6fcd3c7df11500b4179efa6;hpb=2fa804d88f8083e219fe8aa9938b40f9b6b3aa02 diff --git a/lib/MojoX/Gearman.pm b/lib/MojoX/Gearman.pm index 6565e30..8c87379 100644 --- a/lib/MojoX/Gearman.pm +++ b/lib/MojoX/Gearman.pm @@ -74,7 +74,9 @@ sub connected { } sub req { - my ( $self, $type, $data ) = @_; + my $self = shift; + my $type = shift; + my $data = join("\0", @_); Mojo::Util::encode($self->encoding, $data) if $self->encoding; @@ -86,12 +88,11 @@ sub req { warn "# <<<< ",dump($data); my ($magic, $type, $len) = unpack( "a4NN", $data ); die "wrong magic [$magic]" unless $magic eq "\0RES"; - $ret = $data; + $ret = substr($data,12,$len); }; - $data .= "\x00"; my $len = length($data); - my $message = pack("a4NN", "\0REQ", 16, length $data ) . $data; + my $message = pack("a4NN", "\0REQ", $type, length $data ) . $data; warn "# >>>> ",dump($data); my $mqueue = $self->{_message_queue} ||= [];