summaryrefslogtreecommitdiff
path: root/perl/lib
diff options
context:
space:
mode:
authorFuji, Goro <gfuji@cpan.org>2010-10-30 00:28:53 +0900
committerFuji, Goro <gfuji@cpan.org>2010-10-30 00:28:53 +0900
commitf1c294ca5012329c3d550d7b32a34a5d8039de7c (patch)
treebc05dea90b38a388ac0bd2bfda95d81269eeae05 /perl/lib
parentc320e44a236762d73677bbf5780f8c3a42fd98ff (diff)
downloadmsgpack-python-f1c294ca5012329c3d550d7b32a34a5d8039de7c.tar.gz
perl: make error messages compatible with XS
Diffstat (limited to 'perl/lib')
-rw-r--r--perl/lib/Data/MessagePack/PP.pm4
1 files changed, 2 insertions, 2 deletions
diff --git a/perl/lib/Data/MessagePack/PP.pm b/perl/lib/Data/MessagePack/PP.pm
index 5e64093..8d148d2 100644
--- a/perl/lib/Data/MessagePack/PP.pm
+++ b/perl/lib/Data/MessagePack/PP.pm
@@ -305,10 +305,10 @@ foreach my $pair(
sub _unpack {
my ( $value ) = @_;
# get a header byte
- my $byte = unpack "x$p C", $value; # "x$p" is faster than substr()
+ defined(my $byte = unpack "x$p C", $value)
+ or Carp::confess("Data::MessagePack->unpack: insufficient bytes");
$p++;
- Carp::croak("invalid data") unless defined $byte;
# +/- fixnum, nil, true, false
return $byte2value[$byte] if $typemap[$byte] & $T_DIRECT;