Author: suokko
Date: Tue Jun 10 13:38:12 2008
New Revision: 27085

URL: http://svn.gna.org/viewcvs/wesnoth?rev=27085&view=rev
Log:
Made send_file to check error code

Modified:
    branches/1.4/src/network_worker.cpp

Modified: branches/1.4/src/network_worker.cpp
URL: 
http://svn.gna.org/viewcvs/wesnoth/branches/1.4/src/network_worker.cpp?rev=27085&r1=27084&r2=27085&view=diff
==============================================================================
--- branches/1.4/src/network_worker.cpp (original)
+++ branches/1.4/src/network_worker.cpp Tue Jun 10 13:38:12 2008
@@ -406,7 +406,10 @@
                poll_res = poll(&fd, 1, 600000);
        } while(poll_res == -1 && errno == EINTR);
 
-       SOCKET_STATE result = send_buffer(buf->sock, buffer, 4);
+       if (poll_res > 0)
+               SOCKET_STATE result = send_buffer(buf->sock, buffer, 4);
+       else
+               result = SOCKET_ERRORED;
        
        
        if (result != SOCKET_READY)
@@ -443,6 +446,14 @@
 
 
                int bytes = ::sendfile(socket, in_file, 0, filesize);
+       
+               if (bytes == -1)
+               {
+                       if (errno == EAGAIN)
+                               continue;
+                       result = SOCKET_ERRORED;
+                       break;
+               }
 
                upto += bytes;
 


_______________________________________________
Wesnoth-commits mailing list
[email protected]
https://mail.gna.org/listinfo/wesnoth-commits

Reply via email to