From 83f59d4213b6f13bdb6a1d00824c29a09cef54a1 Mon Sep 17 00:00:00 2001 From: Thulinma Date: Mon, 8 Nov 2010 16:25:35 +0100 Subject: [PATCH] DDVSocket edits --- util/ddv_socket.cpp | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/util/ddv_socket.cpp b/util/ddv_socket.cpp index 19a6b80e..43406e4d 100644 --- a/util/ddv_socket.cpp +++ b/util/ddv_socket.cpp @@ -73,7 +73,7 @@ bool DDV_write(void * buffer, int todo, int sock){ int r = send(sock, (char*)buffer + sofar, todo-sofar, 0); if (r <= 0){ switch (errno){ - case EWOULDBLOCK: socketBlocking = true; return false; break; + case EWOULDBLOCK: socketBlocking = true; break; default: socketError = true; printf("Could not write! %s\n", strerror(errno)); @@ -86,6 +86,12 @@ bool DDV_write(void * buffer, int todo, int sock){ return true; } +bool DDV_ready(int sock){ + char tmp; + int r = recv(sock, &tmp, 1, MSG_PEEK); + return (r == 1); +} + bool DDV_read(void * buffer, int todo, int sock){ int sofar = 0; socketBlocking = false; @@ -93,7 +99,7 @@ bool DDV_read(void * buffer, int todo, int sock){ int r = recv(sock, (char*)buffer + sofar, todo-sofar, 0); if (r <= 0){ switch (errno){ - case EWOULDBLOCK: socketBlocking = true; return false; break; + case EWOULDBLOCK: socketBlocking = true; break; default: socketError = true; printf("Could not read! %s\n", strerror(errno));