From ead8edc7cd3e797e5457c8ba63a2374fb8a87067 Mon Sep 17 00:00:00 2001 From: makamaka Date: Wed, 22 Sep 2010 14:12:19 +0900 Subject: [PATCH 1/2] modified be unpack_(u)int64 in PP --- perl/lib/Data/MessagePack/PP.pm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/perl/lib/Data/MessagePack/PP.pm b/perl/lib/Data/MessagePack/PP.pm index 23942225..679dc00e 100644 --- a/perl/lib/Data/MessagePack/PP.pm +++ b/perl/lib/Data/MessagePack/PP.pm @@ -103,8 +103,8 @@ BEGIN { *unpack_float = sub { return unpack( 'f', substr( $_[0], $_[1], 4 ) ); }; *unpack_double = sub { return unpack( 'd', substr( $_[0], $_[1], 8 ) ); }; - *unpack_int64 = $unpack_int64_slow || sub { pack 'q', substr( $_[0], $_[1], 8 ); }; - *unpack_uint64 = $unpack_uint64_slow || sub { pack 'Q', substr( $_[0], $_[1], 8 ); }; + *unpack_int64 = $unpack_int64_slow || sub { unpack 'q', substr( $_[0], $_[1], 8 ); }; + *unpack_uint64 = $unpack_uint64_slow || sub { unpack 'Q', substr( $_[0], $_[1], 8 ); }; } } else { From 6d9a629b155c7a6f814a6973c6c24da308b295ce Mon Sep 17 00:00:00 2001 From: makamaka Date: Wed, 22 Sep 2010 14:19:09 +0900 Subject: [PATCH 2/2] perl: modified trivial codes in PP::Unpacker --- perl/lib/Data/MessagePack/PP.pm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/perl/lib/Data/MessagePack/PP.pm b/perl/lib/Data/MessagePack/PP.pm index 679dc00e..8234b493 100644 --- a/perl/lib/Data/MessagePack/PP.pm +++ b/perl/lib/Data/MessagePack/PP.pm @@ -419,7 +419,7 @@ sub execute { $p = 0; - LOOP: while ( length($self->{data}) > $p ) { + while ( length($self->{data}) > $p ) { _count( $self, $self->{data} ) or last; while ( @{ $self->{stack} } > 0 && --$self->{stack}->[-1] == 0) { @@ -428,7 +428,7 @@ sub execute { if (@{$self->{stack}} == 0) { $self->{is_finished}++; - last LOOP; + last; } } $self->{pos} = $p; @@ -455,7 +455,7 @@ sub _count { $num = $byte & ~0x90; } - if (defined($num) && $num > 0) { + if ( $num ) { push @{ $self->{stack} }, $num + 1; } @@ -476,7 +476,7 @@ sub _count { $num = $byte & ~0x80; } - if ($num > 0) { + if ( $num ) { push @{ $self->{stack} }, $num * 2 + 1; # a pair }