From c0bd6e0f13ff785bf0939757af3d0e91ffe3b6d9 Mon Sep 17 00:00:00 2001 From: Damien Krotkine Date: Thu, 15 Mar 2012 13:08:10 +0100 Subject: catch errors in reading sockets --- lib/Net/Riak/Transport/PBC/Message.pm | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) (limited to 'lib/Net') 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; -- cgit 1.4.1