From 4ed85581780dd75d637bc1a2d3711f5c48dd4320 Mon Sep 17 00:00:00 2001 From: Robert Osfield Date: Thu, 30 Jun 2016 11:19:53 +0100 Subject: [PATCH] Fixed handling of return values --- src/osgPlugins/osc/ip/posix/UdpSocket.cpp | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/osgPlugins/osc/ip/posix/UdpSocket.cpp b/src/osgPlugins/osc/ip/posix/UdpSocket.cpp index 75c892c12..5b49d9c96 100644 --- a/src/osgPlugins/osc/ip/posix/UdpSocket.cpp +++ b/src/osgPlugins/osc/ip/posix/UdpSocket.cpp @@ -176,7 +176,10 @@ public: { assert( isConnected_ ); - send( socket_, data, size, 0 ); + if (send( socket_, data, size, 0 ) < 0) + { + throw std::runtime_error("error when calling send(..)\n"); + } } void SendTo( const IpEndpointName& remoteEndpoint, const char *data, int size ) @@ -184,7 +187,10 @@ public: sendToAddr_.sin_addr.s_addr = htonl( remoteEndpoint.address ); sendToAddr_.sin_port = htons( remoteEndpoint.port ); - sendto( socket_, data, size, 0, (sockaddr*)&sendToAddr_, sizeof(sendToAddr_) ); + if (sendto( socket_, data, size, 0, (sockaddr*)&sendToAddr_, sizeof(sendToAddr_) ) < 0) + { + throw std::runtime_error("error when calling send(..)\n"); + } } void Bind( const IpEndpointName& localEndpoint )