summary refs log tree commit diff
path: root/lib/Net/Riak
diff options
context:
space:
mode:
authorRobin Edwards <rge@cpan.org>2012-03-15 05:22:20 -0700
committerRobin Edwards <rge@cpan.org>2012-03-15 05:22:20 -0700
commite4da4e3dbc020df67a3afa091cb7b4bda5a20a5e (patch)
tree814b78f58c4e371584752f0b58ece9172c661d2f /lib/Net/Riak
parentadded warning for PBC users streaming keys (diff)
parentcatch errors in reading sockets (diff)
downloadnet-riak-e4da4e3dbc020df67a3afa091cb7b4bda5a20a5e.tar.gz
Merge pull request #16 from dams/master
check for errors when reading the socket
Diffstat (limited to 'lib/Net/Riak')
-rw-r--r--lib/Net/Riak/Transport/PBC/Message.pm11
1 files changed, 8 insertions, 3 deletions
diff --git a/lib/Net/Riak/Transport/PBC/Message.pm b/lib/Net/Riak/Transport/PBC/Message.pm
index 75170de..6eebc6f 100644
--- a/lib/Net/Riak/Transport/PBC/Message.pm
+++ b/lib/Net/Riak/Transport/PBC/Message.pm
@@ -110,12 +110,17 @@ sub handle_response {
 sub _unpack_response {
     my $self = shift;
     my ( $len, $code, $msg );
-    $self->socket->read( $len, 4 );
+    _check($self->socket->read( $len, 4 ));
     $len = unpack( 'N', $len );
-    $self->socket->read( $code, 1 );
+    _check($self->socket->read( $code, 1 ));
     $code = unpack( 'c', $code );
-    $self->socket->read( $msg, $len - 1 );
+    _check($self->socket->read( $msg, $len - 1 ));
     return ( $code, $msg );
 }
 
+sub _check {
+    defined $_[0]
+      or die "failure in reading from the socket. Error were : $!";
+}
+
 1;