OSDN Git Service

Rild: Ril should try to write again to the socket EAGAIN error
[android-x86/hardware-ril.git] / libril / ril.cpp
index 1548e62..0f37cc1 100644 (file)
@@ -1315,7 +1315,7 @@ blockingWrite(int fd, const void *buffer, size_t len) {
         do {
             written = write (fd, toWrite + writeOffset,
                                 len - writeOffset);
-        } while (written < 0 && errno == EINTR);
+        } while (written < 0 && ((errno == EINTR) || (errno == EAGAIN)));
 
         if (written >= 0) {
             writeOffset += written;